Node.js 使用utf-8编码写入节点js文件时的度符号问题

Node.js 使用utf-8编码写入节点js文件时的度符号问题,node.js,character-encoding,fs,wordpad,Node.js,Character Encoding,Fs,Wordpad,我正在使用nodeJs npmfs模块来读写使用utf-8编码的文件。文件读写操作已成功完成。但是,当我在windows写字板中打开文件时,Celcius(°C)符号显示为(–C)。如果我在VS代码编辑器中打开同一个文件,并且记事本DEGRE Celcius(°C)符号正确出现,则问题仅限于windows写字板应用程序 下面是节点Js中的文件编写代码 var fs = require('fs'); let data="Temperature is 25°C"; fs.writeFile(

我正在使用nodeJs npmfs模块来读写使用utf-8编码的文件。文件读写操作已成功完成。但是,当我在windows写字板中打开文件时,Celcius(°C)符号显示为(–C)。如果我在VS代码编辑器中打开同一个文件,并且记事本DEGRE Celcius(°C)符号正确出现,则问题仅限于windows写字板应用程序

下面是节点Js中的文件编写代码

var fs = require('fs');    
let data="Temperature is 25°C";
fs.writeFile("./output.txt", data, 'utf8', function (err) {
        if (err) {
          console.error("Error while writing the output file");
        } else {
          console.log("File write operation done!");
        }
});

在我看来,word pad认为您的文件是用拉丁文1(iso-8859-1)或Windows-1252编码的。这些字符编码每个字符使用一个字节,因此它会导致utf8 unicode错误

最佳修复方法:使用记事本或记事本++和写字板吻别

这里有一种方法可以调整文件,使各种应用程序知道它是unicode