2012-02-27 35 views
-1

我在两个步骤中创建csv文件:如何在c#中同时读取/写入文件?

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

col1,col2 
col1,col2 
... 

然后,在相同的输出添加两个更多的列.csv文件

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

因为我不能结合这两个步骤,我需要写入文件,并从头开始重新写入。

+0

我会用streamwriter – 0x4f3759df 2012-02-27 00:11:17

+0

奇怪的问题。一个明显的解决方案,不知道为什么要问,是写两个文件。 – 2012-02-27 01:28:24

回答

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文件的表示(可以在你的进程的每个阶段添加),然后只是一次将它序列化到磁盘上?