MrB*_*Win 12 javascript node.js
我尝试解析"iso-8859-1"页面并使用utf-8保存到我的数据库,这是我的代码:
var buffer = iconv.encode(data, "iso-8859-1");
data = iconv.decode(buffer, 'utf8');
Run Code Online (Sandbox Code Playgroud)
它不起作用.所有符号如å或ä都会转换为�
我该如何保存这些符号?
Álv*_*lez 21
您需要第三方库来完成该任务.您正在使用iconv-lite,因此您需要按照以下步骤操作:
以二进制模式打开输入文件,因此JavaScript不会假设UTF-8也不会尝试转换为其内部编码:
var fs = require("fs");
var input = fs.readFileSync(inputFilePath, {encoding: "binary"});
Run Code Online (Sandbox Code Playgroud)从ISO-8859-1转换为缓冲区:
var iconv = require('iconv-lite');
var output = iconv.decode(input, "ISO-8859-1");
Run Code Online (Sandbox Code Playgroud)将缓冲区保存到输出文件:
fs.writeFileSync(outputFilePath, output);
Run Code Online (Sandbox Code Playgroud)如果不确定编码名称,您可以测试是否支持给定编码encodingExists():
> iconv.encodingExists("ISO-8859-1");
true
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23123 次 |
| 最近记录: |