解决问题:
通过ftp读取中文内容的文件,会存在乱码,如下图:

解决方案
1.详见《安装 iconv-lite》
2.在code节点,写如下代码:
const iconv = require('iconv-lite');
const items = $input.all();
items.forEach(item => {
if (item.binary && item.binary.data) {
// 假设 item.binary.data.data 是一个 Base64 字符串
const base64Data = item.binary.data.data;
try {
// 1. 先将其转换为 Buffer
const buffer = Buffer.from(base64Data, 'base64');
// 2. 尝试使用 GBK 解码(适合中文)
let decodedText;
try {
decodedText = iconv.decode(buffer, 'gbk');
} catch (e) {
// 如果失败,尝试 UTF-8
decodedText = iconv.decode(buffer, 'utf8');
}
// 3. 存入 JSON
item.json.decodedContent = decodedText.trim(); // 去除首尾空白
} catch (e) {
item.json.error = "Failed to decode: " + e.message;
}
} else {
item.json.error = "No binary data found in item";
}
});
return items;
再执行,效果如下图:
