如何从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
提交
取消