ストリングビルダーで前の行のデータを削除する方法
StringBuilderクラスにはJavaで前の行のデータを直接削除するメソッドは用意されていません。しかし、以下の方法で前の行を削除する効果を実現できます。
- StringBuilderオブジェクトを文字列に変換する。
- split() メソッドを使用して、文字列を改行で配列に分割します。
- 配列の最後の行を削除する。
- StringBuilder の delete() メソッドを使用して元の文字列の最終行を削除する。
- 変更されたStringBuilderオブジェクトをStringへ変換します。
以下にサンプルコードを示します
StringBuilder sb = new StringBuilder();
sb.append("Line 1\n");
sb.append("Line 2\n");
sb.append("Line 3\n");
String originalString = sb.toString();
String[] lines = originalString.split("\n");
// 删除最后一行
String[] modifiedLines = Arrays.copyOf(lines, lines.length - 1);
// 重新构建修改后的字符串
StringBuilder modifiedStringBuilder = new StringBuilder();
for (String line : modifiedLines) {
modifiedStringBuilder.append(line).append('\n');
}
String modifiedString = modifiedStringBuilder.toString();
System.out.println(modifiedString);
ネイティブな日本語で言い換えると:
Line 1
Line 2