如何在c#中同时读/写文件?

时间:2012-02-27 00:08:52

标签: c# file-io

我有两个步骤创建的csv文件:

在第一步中,我在output.csv文件中添加了两列

col1,col2
col1,col2
...

然后,在同一个output.csv文件中再添加两列

col1,col2,col3,col4
col1,col2,col3,col4
...

因为我无法将这两个步骤结合起来,所以我需要写入文件,然后从头开始再写。

1 个答案:

答案 0 :(得分:2)

var stream = File.Open("output.csv", FileMode.OpenOrCreate, FileAccess.ReadWrite);
// write file first time here.
stream.Position = 0;
// read stream again here.
stream.Position = column3Position;
// write additional columns in corresponding positions.

但这是一种笨重的做事方式。你不能在对象模型中构建csv文件的表示(可以在进程的每个阶段添加它),然后只是一次将它序列化到磁盘上吗?