从文件以UTF-16格式读取一行

时间:2019-06-07 15:38:00

标签: java utf-8

我有一些从脚本生成的文件,这些文件提供了有关各种计算机的信息。 txt文件采用UTF-8,但是只有一行采用UTF-16格式。我应该如何从文件中读取这一行?

P.S。我正在尝试编写一个程序来解析所有这些文件,并将它们重新编译为一个集合的.csv文件。

我尝试用bufferedReaderScanner读取文件,但是这一行是我遇到的唯一麻烦。我在网上找到的大多数用于读取UTF-16的代码都是针对整个文件的,而不是UTF-16中的全部代码。

///在记事本中打开该行时的外观。

S e r i a l N u m b e r     5 C G 8 X X X X X X

///在Notepad ++中打开该行时的外观,每个字符之间都有“ nul”值。

S e r i a l N u m b e r     

 5 C G 8 X X X X X X

我的代码可以提取字符串的一部分,但是它的格式是多行,Java无法识别每个字母或数字之间的字符。

1 个答案:

答案 0 :(得分:4)

您可以尝试这样。

File infile = new File("/someFileInutf16.txt");
FileInputStream inputStream = new FileInputStream(infile);
 Reader in = new InputStreamReader(inputStream, "UTF-16");