将 iso-8859-1 转换为 utf-8 JavaScript
Convert iso-8859-1 to utf-8 javascript
我尝试解析"iso-8859-1"页面并使用utf-8保存到我的数据库中,这是我的代码:
var buffer = iconv.encode(data, "iso-8859-1");
data = iconv.decode(buffer, 'utf8');
它不起作用。所有符号(如 å 或 ä)都转换为 ï¿1/2
如何保存这些符号?
您需要一个第三方库来完成该任务。您正在使用iconv-lite,因此您需要按照以下步骤操作:
-
以二进制模式打开输入文件,因此 JavaScript 不会假设 UTF-8,也不会尝试转换为其内部编码:
var fs = require("fs"); var input = fs.readFileSync(inputFilePath, {encoding: "binary"});
-
从 ISO-8859-1 转换为缓冲区:
var iconv = require('iconv-lite'); var output = iconv.decode(input, "ISO-8859-1");
-
将缓冲区保存到输出文件:
fs.writeFileSync(outputFilePath, output);
如果不确定编码名称,可以测试给定的编码是否受encodingExists()
支持:
> iconv.encodingExists("ISO-8859-1");
true
它对我有用:
var tempBuffer = new Buffer(response.body, 'iso-8859-1');
var iconv = new Iconv('ISO-8859-1', 'UTF-8');
var tempBuffer = iconv.convert(tempBuffer);
使用"iconv"模块 https://github.com/bnoordhuis/node-iconv
您现在可以使用Web标准TextDecoder
解码字符串(也适用于node和deno):
const { readFile } from 'fs'
const encoded = await readFile(inputFilePath)
const decoded = new TextDecoder('windows-1252').decode(encoded)
请注意,windows-1252
相当于ISO-8859-1
更多,结帐 https://developer.mozilla.org/en-US/docs/Web/API/Encoding_API/Encodings
我想识别图片上的文件在此处输入图像描述
下面的代码可以让中文不乱码
import iconv from 'iconv-lite';
var buffers = fs.readFileSync(path.join(__dirname, 'file/1.csv'));
var output = iconv.decode(buffers, 'gbk');
相关文章:
- 在JavaScript源代码中使用UTF-8字符文字是否安全
- 使用javascript中的UTF-8编码生成友好的url
- JavaScript 强制使用 UTF-8 编码
- 如何通过jQuery $.load()实用程序函数获取PHP将utf-8字符串传递给JavaScript
- unicode to utf-8 in JavaScript
- JavaScript utf-8 编码问题
- 使用 JavaScript 获取 UTF-8 URL 参数
- 使用 UTF-8 和具有动态 CSV 文件名的 /uFEFF 在 JavaScript 中导出 CSV
- JavaScript 添加的 HTML 输入中的 UTF-8
- JavaScript ascii 到 utf-8 的转换问题与负数
- 如何直接在 JavaScript 中将字符串编码为 UTF-8
- 在 JavaScript 中将 UTF-8 字符串转换为 Windows-1250
- 将 iso-8859-1 转换为 utf-8 JavaScript
- Javascript将文本区域保存为UTF-8格式的文件
- 如何将utf-8数据从Django传递到javascript
- 显示语言'在UTF-8的帮助下,使用JavaScript以自己的母语命名
- 用PHP编写Javascript UTF正则表达式
- 相当于Java的URLEncoder.encode(“字符串”、“UTF-8”)的JavaScript
- Javascript表单缩短-UTF-8转换编码
- JavaScript Regex-必须至少包含UTF-8中的任何2个字母