Node.js开发指南上
var fs = require('fs');
fs.readFile('file.txt', 'utf-8', functino(data){
if (err) {
console.error(err);
} else {
console.log(data);
}
});
console.log('end.');
运行的结果如下: end. Contents of the file. 而如果是同步的话fs.readFileSync,就会是 Contents of the file. end. -----------------------------分隔线--------------------------------- 我得到的结果却是: Contents of the file. end. -----------------------------分隔线--------------------------------- 是版本更新了才变成这样,还是?求解?
18 回复
不清楚你有什么疑问。。。 异步的,就应该是这样 end. Contents of the file.
同步的,就应该是这样 Contents of the file. end.
有什么问题吗? 无论这个文件的大小,哪怕文件是零,顺序都是固定的
@coolicer 昨天也可能没错,今天也可能错了。档案的大小、cpu的load等都有可能产生不同的顺序,这些都靠不住,我也遇到过,在开发机上就是有一定的顺序,上载到生产server上又是另一顺序,可能cpu强了些?
@coolicer readFile可读任何类型的文件,如加UTF8, 结果就是String, 如没就是buffer, 这时可来个toString如果是text的话,utf8的优点是你不要来这下,如果你清楚你的文件是text.