一千萬個為什麽

搜索

如何從Java中刪除文件中的換行符?

如何在Java中替換字符串中的所有換行符,以便在Windows和Linux上工作(即沒有特定於OS的回車/換行/換行等問題)?

我試過了(註意readFileAsString是一個將文本文件讀入String的函數):

String text = readFileAsString("textfile.txt");
text.replace("\n", "");

但這似乎不起作用。

如何才能做到這一點?

最佳答案

您需要將 text 設置為 text.replace()的結果:

String text = readFileAsString("textfile.txt");
text = text.replace("\n", "").replace("\r", "");

這是必要的,因為字符串是不可變的 - 調用 replace 不會更改原始字符串,它會返回一個已更改的新字符串。如果未將結果分配給 text ,則新的String將丟失並進行垃圾回收。

至於獲取任何環境的換行符 - 可以通過調用 System.getProperty(“line.separator”)來獲得。

轉載註明原文: 如何從Java中刪除文件中的換行符?