为啥下面的代码没有将字符串“Write this to the file”写入文件“my_file”

Posted

技术标签:

【中文标题】为啥下面的代码没有将字符串“Write this to the file”写入文件“my_file”【英文标题】:Why the below code is not writing the string "Write this to the file" to the File "my_file"为什么下面的代码没有将字符串“Write this to the file”写入文件“my_file” 【发布时间】:2015-10-09 21:11:23 【问题描述】:

我编写了以下代码,将字符串“Write this to the file”写入文件“my_file”。在执行时,我在控制台上得到“文件写入成功完成”——来自 fs.write 的回调。但我在文件中看不到任何内容。

var fs = require('fs');

function openFileAndAppend(writeBuffer)
    fs.open('./my_file','a',function opened(err,fd)
        if(err)
            console.log(err);
            fs.close(fd,function(err)
                if(err)
                    console.log(err);
                    console.log("Problem in closing the file upon the Open;");
                
            );
        
        var bufferOffset = 0;
        var bufferLength = writeBuffer.lenght;
        var filePosition = null;
        fs.write(fd,writeBuffer,bufferOffset,bufferLength,filePosition,function(err)
            if(err)
                console.log(err);
            
            console.log("FileWrite Completed Successfully");
            fs.close(fd,function(err)
                console.log("Closing the file");
                if(err)
                    console.log(err);
                    console.log("Problem in closing the file after the write");
                
            );
        );
    );


openFileAndAppend(new Buffer('Write this to the file'));

请帮忙找出错误。

提前致谢!!

【问题讨论】:

【参考方案1】:

我在发布这个问题后发现了错误:

var bufferLength = writeBuffer 中有一个错字。lenght;

谢谢

【讨论】:

以上是关于为啥下面的代码没有将字符串“Write this to the file”写入文件“my_file”的主要内容,如果未能解决你的问题,请参考以下文章

为啥下面的代码没有抛出IndexOutOfBoundsException,并打印出9 9 6?

为啥下面的代码会产生死锁

为啥分离线程没有输出消息?

Oracle PL/SQL 下面的代码为啥出错啊!提示CASE与WHEN见出现不匹配字符,急!

为啥下面的表达式返回 true?

为啥下面的代码编译运行成功? [复制]