use*_*421 3 javascript arrays hex file node.js
我想将一个数组转换为一个文本文件,并用换行符分隔每个条目。
我发现了一个名为 array-to-txt-file 的 npm 包。这是网页: array-to-txt-file
这个包声称将用换行符连接数组的每个元素,以便数组的每个元素都出现在文本文件的自己的行上。
所以我试了一下,虽然效果很好,但它并没有用换行符连接元素。一个元素在哪里结束,另一个元素就在哪里开始。
所以我查看了包的源代码,这是创建这种效果的代码。
try {
array.forEach(v => {
if(_.isPlainObject(v)) {
ws.write(`${JSON.stringify(v)}\n`)
return
}
ws.write(`${v}\n`)
})
Run Code Online (Sandbox Code Playgroud)
特别是ws.write(
${v}\n)
部分。
然后我将我的输出文本文件导入到十六进制编辑器中。在十六进制编辑器中,每个元素之间都有一个点。现在,这个点与普通点不同。
常规点的十六进制值为2E
,而出现在元素之间的点的十六进制值为0A
。另请注意,我使用的是 Windows 7,当用记事本查看时,元素之间没有任何显示 - 一个结束,另一个直接开始。
那么有没有办法修改我上面发布的代码中的那一行,所以它真的在那个部分创建了一个换行符?
有什么原因简单的join
不适合你吗?
let arr = ["a", "b", "c", "d", "e", "f"];
console.log(arr); // [ 'a', 'b', 'c', 'd', 'e', 'f' ]
console.log(arr.join('\n'));
// a
// b
// c
// d
// e
// f
let text = arr.join('\n');
fs.writeFileSync('modified.txt', text, "utf8");
Run Code Online (Sandbox Code Playgroud)
如果需要,你可以替换\n
与\r\n
作为@Saif暗示的加入,但我似乎并没有必要,或许vscode自动为我虽然这样做。我在 Windows 机器上。
归档时间: |
|
查看次数: |
5332 次 |
最近记录: |