我一直堅持這一段時間,終於決定請求幫助。 所以我有一個小文本文件,用戶想要從它切換2行,用戶輸入2行的索引,我必須切換EM。 到目前爲止我的想法是要麼使用replaceALL與2正則表達式 ,但答:這可能不會切換它們,但只是最終取代一個與另一個,留給我一個副本和乙:我不知道如何使用正則表達式找到第n行; 或使用 - Files.readAllLines(Paths.get(name))。get(index);爲了得到兩條線,但是我仍然在爲實際的切換過程而努力。在Java文本文件中切換兩行
1
A
回答
1
0
如果你正在處理大文件,並且需要節省內存,你可以這樣做(不過,如果第二互換額度接近文件的末尾,可能需要更長的時間):
File myFile = new File(somePath);
File outputFile = new File(someOtherPath);//this is where the new version will be stored
BufferedReader in = new BufferedReader(new FileReader(myFile));
PrintWriter out = new PrintWriter(outputFile);
String line;
String swapLine;//first line to swap
int index = -1;//so that the first line will have an index of 0
while((line = in.readLine()) != null){
index++;
if(index == firstIndex){//if this line is the first line to swap
swapLine = line;//store the first swap line for later
//Create a new reader. This one will read until it finds the second swap line.
BufferedReader in2 = new BufferedReader(new FileReader(myFile));
int index2 = -1;
while(index2 != secondIndex){
index2++;
line = in.readLine();
}
//The while loop will terminate once line is equal to the second swap line
}else if(index == secondIndex)//if this line is the second swap line{
line = swapLine;
//this way the PrintWriter will write the first swap line instead of the second
}
out.println(line);
}
你可以,當然,編程方式刪除myFile
和重命名outputFile
到任何myFile
被評爲磁盤算賬:
myFile.delete();
outputFile.renameTo(myFile);
我相信這個工作,但我沒有測試它。
相關問題
- 1. 切換兩個文件名?
- 2. 在兩組文本之間切換
- 3. 在JavaScript中切換文本
- 4. 轉換文本文件,XML在java中
- 5. 切換文本
- 6. 在java中交換文件的兩列
- 7. 如何連續每兩秒在兩個值之間切換文本切換器
- 8. PHP換行符在文本文件中
- 9. 切換替換文本的行爲
- 10. 使用批處理文件在兩個文件之間切換
- 11. 切換兩個文件的名稱
- 12. 更改/切換WPF文本框的文本dataBinding在運行時
- 13. 在java中替換文本?
- 14. 在Java中打印文本文件的確切內容
- 15. 打開txt文件並替換前兩行中的文本(C#)
- 16. java文本文件新行
- 17. 如何在文件中切換大小寫的文本
- 18. 將一行文本從文本文件轉換爲java中的密文
- 19. 在文本文件替換行與其他文本文件
- 20. jQuery切換div和切換文本
- 21. 如何在文本文件的兩行之間寫入文本。 Java
- 22. 在LaTeX中切換包含文本
- 23. Flex - 在TextArea中切換粗體文本
- 24. 文本通過jQuery在HTML中切換
- 25. Java;從輸入文本文件到輸出文本文件的換行符
- 26. 替換Java中的第一行文本文件
- 27. 用java替換文本文件中的一行
- 28. Java:檢索並替換文本文件中的最後一行
- 29. 使用java替換文本文件中的行號
- 30. 結合兩個文本文件的Java
它需要使用大型文件嗎? – 4castle