書かれたコードは、必要な行番号(3つの数値、たとえば001,002 .... 999)を削除するのではなく、ドキュメント全体を削除します(1行目から000を除いた1行目を示しています)。 000,001,002,003などの形式のテキストファイル全体の最初の列を削除する必要があります。 ここに私が実行しようとしているコードがあります。Javaのテキストファイルから行番号を削除する
import java.io.*;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class delete{
public static void main(String[] args){
try{
File file = new File("abc.txt"); // create File object to read from
Scanner scanner = new Scanner(file); // create scanner to read
while(scanner.hasNextLine()){ // while there is a next line
// hasNextLine() &&
String line = scanner.nextLine(); // line = that next line
char []ch = line.toCharArray();
StringBuilder sb = new StringBuilder(line);
// replace a character
String newLine = "";
for(int i = 0; i < line.length();i++){
if((scanner.hasNextLine()) && (Character.isDigit(ch[i]))){
// delete three characters and go to next line
char chr = ' ';
sb.setCharAt(0,chr);
sb.setCharAt(1,chr);
sb.setCharAt(2,chr);
scanner.nextLine();
newLine = sb.toString();
}
}
// print to another file.
PrintWriter writer = new PrintWriter("abcd.txt"); // create file to write to
writer.println(newLine);
writer.flush();
writer.close();
scanner.close();
}
}catch (Exception ex){
ex.printStackTrace();
}
}
}
私の最初の2つの答えについて申し訳ありません。あなたの質問は以前は不明でしたが、今は明らかです。ありがとうございました。私は以下の正解を投稿しました。 – CodingNinja