请注意,这是一项家庭作业。
有人可以帮我弄清楚如何将文本附加到文本文件的每一行的开头吗?这就是我到目前为止所做的:
package addStr;
import java.util.*;
import java.io.*;
public class AddStr {
public static void main(String args[]) throws FileNotFoundException, IOException{
Scanner con = new Scanner(System.in);
System.out.print("Enter input file: ");
String fileIn = con.next();
System.out.print("Enter output file: ");
String fileOut = con.next();
File in = new File(fileIn);
Scanner sc = new Scanner(in);
FileWriter out = new FileWriter(in, true);
PrintWriter print = new PrintWriter(out);
print.print("hello");
print.close();
}
}
我只打印“hello”作为测试,以查看它将附加到文件中的哪个位置。它附加在最后一行的末尾。我需要将它附加到第一行的开头,然后使用循环将其附加到每个后续行的开头。
此外,程序会提示用户输入文件名。
答案 0 :(得分:1)
更改文件内容的最简单方法是打开它进行读取,将其读入结构,重新打开文件进行写入,然后从结构写回文件。除非文件很大,否则性能将完全可以接受。
如果您使用的是Java 8,那么这可能非常简单。假设您对文件有Path
:
List<String> lines = Files.lines(path).map(s -> "Prefix" + s).collect(Collectors.toList());
Files.write(path, lines);