我得到了一个包含很多句子的文本。
我正在使用名为anticAnalysis-master的外部库。
我读了txt并使用analysis.parse(line).getCode()
将每个句子翻译成代码(1/0 / -1)。最后它会输出到另一个.txt。
如下图所示,它会在输出控制台中生成程序状态。输出控制台中的红线会自动生成
但是,它也会将程序状态打印到txt中。
因此,如何从txt中删除该行程序状态?(图2)
final int[] score = {
0
};
try (Stream < String > stream = Files.lines(Paths.get("D:\\out.txt")).sequential()) { //retrieve txt file
File file = new File("D:\\analysis.txt"); //output file
FileOutputStream fos = new FileOutputStream(file);
PrintStream ps = new PrintStream(fos);
System.setOut(ps);
final Analysis analysis = new Analysis();
stream.forEach(line - > {
System.out.println("Code: " + analysis.parse(line).getCode()); //translate every lines into code
score[0] = score[0] + analysis.parse(line).getCode(); //add up the total score
}
System.out.println("score=" + score[0]); //print out the total score
答案 0 :(得分:1)
不要重定向标准输出。相反,只需打印到您的新文件。
PrintStream ps = new PrintStream(fos);
final Analysis analysis = new Analysis();
stream.forEach(line - > {
ps.println("Code: " + analysis.parse(line).getCode());
score[0] = score[0] + analysis.parse(line).getCode();
}