java读取Linux MIME问题上的Windows文本文件?
我试图通过Linux PC上运行的Java应用程序逐行读取MIME类型的文件“appliaction/octet stream”。澄清:“appliaction/octet stream”是在Linux上运行“file-ib file.txt”的结果
我试图读取的文件是在Windows XP上创建的
我把我的文件叫做“file.txt”
在linux上,“cat file.txt”显示内容。“cat-v”和vim显示控制字符
当我通过Java应用程序(使用简单的BufferedReader(FileReader)类型的代码)运行代码来迭代它时,我的输出是意外的
我应该带什么?我尝试使用dos2unix转换该文件,但没有成功
编辑:通过vim或“cat-v”读取时,输入文件如下所示:
[^@S^@y^@s^@t^@e^@m^@]^@^M^@
这行代码只是说“System”,但似乎控制字符通过我的Java应用程序使文件无法读取
更新:我使用所有可用的字符编码运行代码,结果显示可读字符集是“x-UTF-16LE-BOM”和“composite-TEXT”。谢谢大家的帮助
# 1 楼答案
看起来该文件是使用UTF-16 encoding编写的。要在Java中阅读此内容,您只需要specify that encoding in your reader: