我正在尝试在 node.js 的文件中写入字符串的内容
我有一些 raml 文件,我可以加入它们。如果我在控制台中打印变量,我会看到它被很好地解析,但是一旦我保存在一个文件中,该文件只包含一行:
var raml = require('raml-parser');
var fs = require('fs');
var path = require('path');
var os = require('os')
path.join(__dirname, './')
raml.loadFile('schema.raml').then( function(data) {
console.log(data);
var filePath = "schema.raml";
fs.unlinkSync(filePath);
fs.writeFile("./new.raml", JSON.stringify(data).replace('/\n', os.EOL), function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
});
}, function(error) {
console.log('Error parsing: ' + error);
});
我添加了一个替换 EOL 来更改文件中的所有“\n”。如果我删除它,文件将在每一行的末尾包含“\n”。
在控制台上,这是输出:
{ title: 'RAML Flattener',
baseUri: 'http://github.com/joeledwards/node-flat-raml',
version: '1',
mediaType: 'application/json',
protocols: [ 'HTTP' ],
resources:
[ { relativeUri: '/base',
methods: [Object],
resources: [Object],
relativeUriPathSegments: [Object] } ] }