相关疑难解决方法(0)

我们可以自己写一个EOF角色吗?

大多数语言如C++在写入文件时,即使我们错过编写如下语句,也会输入EOF字符:

filestream.close

但是有什么办法,我们可以根据我们的要求,在C++中为一个实例放置EOF字符.或者除了使用C++中提供的函数之外我们可以使用的任何其他方法.

如果您需要询问更多信息,请发表评论.

提前致谢.

编辑:感谢您的支持,但这里是这个问题的补充:

如果,我们想欺骗OS和放置一个EOF字符的文件和EOF了一些数据后写了这么像的notepad.exe应用程序不能我们EOF字符后阅读.我已阅读的答案与此主题相关的问题,并已经开始知道nowdays OS一般看不到一个EOF字符,而检查文件的长度让知道关于该文件的长度,但正确的想法,有必须在OS的程序,其将被检查的文件的长度,然后更新所述文件中的记录.

我很抱歉,如果我错了,在我估计任何一点,但请你帮我,因为它可以导致很多新的想法.

c++ eof

39
推荐指数
6
解决办法
7万
查看次数

NodeJS:将EOF发送到stdin流而不关闭流

如何在不关闭流的情况下向流中发送EOF信号?

我有一个等待stdin输入的脚本,然后当我按下ctrl-d时,它会将输出吐出到stdout,然后再次等待stdin直到我按下ctrl-d.

在我的nodejs脚本中,我想生成该脚本,写入stdin流,然后以某种方式发出EOF信号而不关闭流.这不起作用:

var http = require('http'),
    spawn = require('child_process').spawn;

var child = spawn('my_child_process');
child.stdout.on('data', function(data) {
    console.log(data.toString());
});

child.stdout.on('close', function() {
    console.log('closed');
})

http.createServer(function (req, res) {
    child.stdin.write('hello child\n');
    res.writeHead(200, {'Content-Type': 'text/plain'});
    res.end('Hello World\n');
}).listen(1337, '127.0.0.1');
Run Code Online (Sandbox Code Playgroud)

但是,如果我将child.stdin.write(...)更改为child.stdin.end(...),它可以工作,但只能执行一次; 之后关闭流.我在某处看到EOF实际上并不是一个角色,它只是一个不是一个角色的东西,通常为-1,所以我试过这个,但这也不起作用:

var EOF = new Buffer(1); EOF[0] = -1;
child.stdin.write("hello child\n");
child.stdin.write(EOF);
Run Code Online (Sandbox Code Playgroud)

javascript node.js

15
推荐指数
1
解决办法
6818
查看次数

标签 统计

c++ ×1

eof ×1

javascript ×1

node.js ×1