Javascript 如何将带有行间距的文本写入CSV文件?
我在一个带有字符串的对象中获取产品描述。 我想将数据写入CSV文件,以便进行数据分析 我需要的数据是视觉好看,所以我可以很容易地阅读它。 问题是,到目前为止,我得到的只是一堆很难读懂的字符串 如果从excel进行编辑,将使用Alt+Enter,这将在同一行中创建一些空间。 如何使用一些行距写入文件,而不会在excel中创建新行 我发现:Javascript 如何将带有行间距的文本写入CSV文件?,javascript,csv,npm,Javascript,Csv,Npm,我在一个带有字符串的对象中获取产品描述。 我想将数据写入CSV文件,以便进行数据分析 我需要的数据是视觉好看,所以我可以很容易地阅读它。 问题是,到目前为止,我得到的只是一堆很难读懂的字符串 如果从excel进行编辑,将使用Alt+Enter,这将在同一行中创建一些空间。 如何使用一些行距写入文件,而不会在excel中创建新行 我发现: \n被复制为测试 \r\n正在开始一个新行,而不是仅间隔该行 例如: fs.appendFile(`./data/testCSV.csv`, encodeUR
\n
被复制为测试\r\n
正在开始一个新行,而不是仅间隔该行fs.appendFile(`./data/testCSV.csv`, encodeURIComponent(element.name +'\r\n'+ element.description + '\r\n'+ element.short_description), function (err) {
if (err) throw err;
});
将它分成3行
下面是一个我希望它看起来像什么的例子:
还试图找到NPM解析器,但它们都会创建新行。要在csv中包含多行字段,您需要用引号括起字段:
123,"multi
line
text",456
字段内的引号必须用另一个引号转义:
123,"Samsung
24""
monitor",456
不过,我不确定Excel是否能做到这一点。多亏了Danny
此变量版本运行良好:
`"${x} \n ${y} \n\n ${z}"`
您是否在文本编辑器中打开了用Excel创建的版本,以便查找使用
Alt
+Enter
的换行符是如何编码的?是的,只是用“”敲击它。当我使用在线查看不可打印的Unicode字符工具时,我发现:crlf-between。但是找不到如何使用此info.Btw。没有必要用反标记将路径(即`./data/testCSV.csv`
)括起来,因为它不包含模板文本中的嵌入表达式。将路径用单引号或双引号括起来。True,但如何将其添加到JS字符串中?我得到的字符串是原样的,我只能使用脚本拼接和连接其他字符串。我不能只按Enter键。@yoni349您可以只使用\n
或\r\n
,但我不会把它放在encodeURIComponent()
中。这只是在excel中结束和开始一个新行。我需要它在同一单元格/行中空格。@yoni349您可以为上面的多行字段创建以下字符串:“multi\nline\ntext”
或“multi\n\nline\n\ntext”
,如果您希望中间有空行。这些空格似乎是不必要的,根据您的问题示例,应该是:`${element.name}\n${element.description}\n\n${element.short_description}`