Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js nodejs&;快速csv:如何修改现有csv文件而不覆盖它?_Node.js_Csv - Fatal编程技术网

Node.js nodejs&;快速csv:如何修改现有csv文件而不覆盖它?

Node.js nodejs&;快速csv:如何修改现有csv文件而不覆盖它?,node.js,csv,Node.js,Csv,以上是我的csv文件的结构示例。我一直在四处搜索,只知道如何读写文件我找不到任何关于修改现有csv文件的信息。 在这里,我试图: 1) 删除记录 2) 修改一条记录 3) 追加新记录 我对nodejs和fast csv很陌生。提前感谢您的帮助。如果文件大小合理,您可以读取整个文件,然后更改所需内容并将其写回同一文件。但是如果它是一个大文件,最好是逐行读取csv文件,修改它,然后再逐行写入一个新文件。然后删除旧文件并重命名新文件。您不能写入正在读取的文件。@Molda嗨,Molda。谢谢你的回复。

以上是我的csv文件的结构示例。我一直在四处搜索,只知道如何读写文件我找不到任何关于修改现有csv文件的信息。

在这里,我试图:

1) 删除记录

2) 修改一条记录

3) 追加新记录


我对nodejs和fast csv很陌生。提前感谢您的帮助。

如果文件大小合理,您可以读取整个文件,然后更改所需内容并将其写回同一文件。但是如果它是一个大文件,最好是逐行读取csv文件,修改它,然后再逐行写入一个新文件。然后删除旧文件并重命名新文件。您不能写入正在读取的文件。@Molda嗨,Molda。谢谢你的回复。我说的对吗?没有直接的API可以删除、修改和附加新记录?我必须创建一个新文件或覆盖现有文件?谢谢是的,没错。您必须考虑文件是如何写入光盘的。假设您将第一条记录
p1 | 10
更改为
p1 | 1000
,那么从第二行开始的整个文件必须移动两个字节,因为这两个额外的零没有空间。这就是为什么有些数据库针对这种操作进行了优化,可以更改记录,而不必每次更改某个内容时都移动整个文件。@Molda嗨,Molda。谢谢
id        | minQty
--------------------
p1        | 10
--------------------
p2        | 20
--------------------
p3        | 30
--------------------
p4        | 40
--------------------
p5        | 50
--------------------