Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js fs.readFile()不读取整个文件,每次读取的内容都缺少几个部分_Node.js_File_Readfile - Fatal编程技术网

Node.js fs.readFile()不读取整个文件,每次读取的内容都缺少几个部分

Node.js fs.readFile()不读取整个文件,每次读取的内容都缺少几个部分,node.js,file,readfile,Node.js,File,Readfile,我在程序中遇到了一个奇怪的fs.readFile()问题。该文件不大(只有500k大小),它是一个JSON.stringify(obj)字符串。我试着把它读出来,并把它传给前端。 在fs.readFile(“/path/filename”,“utf8”,函数(e,data){})的回调中,我只得到了完整的字符串 fs.readFile("/path/filename",'utf8', function (err,data) { if(err) {

我在程序中遇到了一个奇怪的fs.readFile()问题。该文件不大(只有500k大小),它是一个JSON.stringify(obj)字符串。我试着把它读出来,并把它传给前端。 在fs.readFile(“/path/filename”,“utf8”,函数(e,data){})的回调中,我只得到了完整的字符串

    fs.readFile("/path/filename",'utf8', function (err,data) {
            if(err) {
               throw err;
            } else {
               let str = JSON.parse(data); // it will throw error by saying "SyntaxError: Unexpected end of JSON input"
            }
        }); 
你遇到这个问题了吗 读取整个/完整文件的解决方案是什么?
PS:我已经手动检查了文件内容,它是好的和完整的JSON字符串。

我刚刚发现我在程序中做错了什么。在写入文件未完全完成之前,读取文件的触发信号已发送“太快”。我设置了一些超时时间,只有100毫秒解决了这个问题,我可以读出完整的json字符串来解析为object。

当你说你手动检查了文件时,是你自己检查的,还是使用了类似于试图排除的方法。@Alec Bennett,我使用升华文本编辑器打开文件并检查了文件内容,这是一个完整的json字符串。这很好,用承诺代替