我正在逐行读取一个文件,并且我正在尝试使它符合我的特定参数(在我的情况下,如果它以某个词),我可以覆盖该行。在java中同时读取和写入文件
我当前的代码:
try {
FileInputStream fis = new FileInputStream(myFile);
DataInputStream in = new DataInputStream(fis);
BufferedReader br = new BufferedReader(new InputStreamReader(in));
String line;
while ((line = br.readLine()) != null) {
System.out.println(line);
if (line.startsWith("word")) {
// replace line code here
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
...其中myFile
是File
对象。
像往常一样,任何帮助,例子或建议,非常感谢。
谢谢!
为什么不一次读取整个文件,关闭它,打开它进行写入,然后在对它执行转换后写出每一行? – Patashu
@Patashu如果它是一个大文件呢,那么我提出的方法会更好。 – iphonedev7
请不要使用DataInputStream来读取文本http://vanillajava.blogspot.co.uk/2012/08/java-memes-which-refuse-to-die.html –