如何從Java中刪除文件中的換行符?如何在Java中替換字符串中的所有換行符,以便在Windows和Linux上工作(即沒有特定于OS的回車/換行/換行等問題)?我試過了(注意readFileAsString是一個將文本文件讀入String的函數):String text = readFileAsString("textfile.txt");text.replace("\n", "");但這似乎不起作用。如何才能做到這一點?
3 回答

哆啦的時光機
TA貢獻1779條經驗 獲得超6個贊
您需要設置text
結果text.replace()
:
String text = readFileAsString("textfile.txt");text = text.replace("\n", "").replace("\r", "");
這是必要的,因為字符串是不可變的 - 調用replace
不會更改原始字符串,它會返回一個已更改的新字符串。如果未將結果分配給text
,那么新的String將丟失并收集垃圾。
至于獲取任何環境的換行符 - 可通過調用獲得System.getProperty("line.separator")
。

PIPIONE
TA貢獻1829條經驗 獲得超9個贊
如果只想刪除當前操作系統上有效的行終止符,可以執行以下操作:
text = text.replaceAll(System.getProperty("line.separator"), "");
如果要確保刪除任何行分隔符,可以這樣做:
text = text.replaceAll("\\r|\\n", "");
或者,稍微冗長,但更少的regexy:
text = text.replaceAll("\\r", "").replaceAll("\\n", "");
添加回答
舉報
0/150
提交
取消