我对这个烦人的^ M有问题,在导出一些数据时,将其写入要下载的CSV文件。我做了一些研究,发现如果您正在阅读的文件来自Windows系统,则会出现此问题(Windows使用CR(即^ M)/ LF对来指示行的结束,而UNIX仅使用LF)。
现在任何人都可以提供一个解决方案来解决这个问题(比如消除或替换^ M),然后再把它放到编写器上(writer.write(columnToBeInserted);)
答案 0 :(得分:2)
您可以使用unix2dos
和dos2unix
分别转换UNIX和Windows文件。两者都可以在* nix和Windows平台上使用。阅读more。
Windows链接
答案 1 :(得分:1)
当你阅读每一行时
line.replaceAll("\\p{Cntrl}", "");
或使用工具为您完成
答案 2 :(得分:0)
dos2unix
和unix2dos
的实用程序,它将文件从windows转换为linux格式,反之亦然。
Windows上的检查此链接并下载将从Windows转换为linux格式的实用程序http://www.sg-chem.net/u2win/