gpt4 book ai didi

javascript - 使用 FS 读取字符串返回此错误 : Unexpected token r in JSON at position 0

转载 作者:行者123 更新时间:2023-11-29 20:54:24 25 4
gpt4 key购买 nike

我有一个字符串,不是对象,什么都没有,但我需要获取该数据,而我能够获取该数据的唯一方法是使用 Node 的内置 FS 对 readFile 数据执行 JSON.parse模块。

fs.readdir('./Names', (err, files) => {
files.forEach(file => {
fs.readFile(`./Names/${file}`, (err, data) => {
if (err) throw err;
var string = JSON.parse(data)
console.log(string)
})
});
})

这就是我现在的代码。我有正确的所有数据,为了简要说明 fs.readdir 获取所有文件的名称然后读取它们但是我在读取文件时遇到问题,因为它们不是对象并且非常困难在没有脚本的情况下一次性将大量 .txt 文件全部转换为对象,这又会导致这个问题。

有没有其他方法可以将对象的数据部分(在 NodeJS/JS 中是缓冲区)转换回可读的字符串?

最佳答案

作为Patrick提到,返回的 data 是缓冲区,因此您需要将其转换为字符串或让 API 通过传递编码为您完成,例如

fs.readdir('./Names', (err, files) => {
files.forEach(file => {
fs.readFile(`./Names/${file}`, 'utf8', (err, data) => {
if (err) throw err;
// now uncomment this only if your data is JSON formatted
// var string = JSON.parse(data)
console.log(data)
})
});
})

引用:fs.readFile

关于javascript - 使用 FS 读取字符串返回此错误 : Unexpected token r in JSON at position 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50080587/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com