提问者:小点点

读取节点JS中的Windows-1252文件


我正在使用node读取一个文本文档,使用readFile,该文档中有一个字符

这是一个windows-1252字符,但它正在javascript中自动转换为utf-8。 正确的字符实际上应该显示为

有没有一种方法我可以转换这个字符从utf-8到windows-1252,以呈现正确的字符?

由于缺乏对必要编码的支持,文件正在使用nodes readFile方法读取,并且被读取为utf-8。

fs.readFile(`${logDirectory}myText.txt`,"utf-8", (err, text) => { ... } 

我尝试了一些选项,比如iconv-lite和legacy-decode,但似乎都无法返回正确的结果。

欢迎任何指导。


共1个答案

匿名用户

您可以尝试使用Latin1读取文件-编码为Windows-1252基于以下内容:

fs.readFile(`${logDirectory}myText.txt`,'latin1', (err, text) => { ... } 

还要注意,在NodeJS中,utf-8编码称为UTF8,而不是这里描述的utf-8