項目行を削除して、各行の行番号も削除するサンプルコードです。
前のページで紹介した
Sample09_01.java を、逆向きに行うプログラムです。
行の先頭から TAB(\t) までの文字を削除します。
行の先頭は、「改行(\n) の一文字前」で特定しています。
//Sample10_01.java
class Sample10_01{
public static void main(String[] args){
//変更前のデータ
StringBuilder sb = new StringBuilder();
sb.append("NO\t氏名\n");
sb.append("1\t黄瀬涼太\n");
sb.append("2\t緑間真太郎\n");
sb.append("3\t青峰大輝\n");
sb.append("4\t紫原敦\n");
sb.append("5\t赤司征十郎\n");
System.out.println(sb.toString());
System.out.println("-----------");
/*項目行の削除*/
int start = 0;
int end = sb.indexOf("\n"); //最初の改行文字
end++; //改行文字の後ろ
sb.delete(start, end);
System.out.println(sb.toString());
System.out.println("-----------");
/*各行の行番号を削除*/
end = sb.lastIndexOf("\t"); //後から検索して最初のTAB
while(end != -1){
start = sb.lastIndexOf("\n", end); //end より前にある最初の改行
start++; //改行の後ろ (start==-1 の場合は start==0 として扱う)
end++; //TABの後ろ
sb.delete(start, end);
end = sb.lastIndexOf("\t"); //後から検索して最初のTAB
}
System.out.println(sb.toString());
}
}