我有一个类TestLogEntry
,其ToString()
方法已被重写,如下所示:
class TestLogEntry
{
public int counter;
public string filename;
public long id;
public int featureCount_existing;
public string fromPath;
public int featureCount;
public bool isCheckedOut;
public bool modifiedByThisUser;
public bool canUpdate;
public string ToString()
{
return String.Format("{0},{1},{2},{3},{4},{5},{6},{7},{8}", counter, filename, id, featureCount_existing, fromPath, featureCount, isCheckedOut, modifiedByThisUser, canUpdate);
}
}
我有一个List<TestLogEntry>
实例testLog
,我正在尝试将其读入文本文件:
using (FileStream fs = File.Open(@"C:\Logs\TestLog\testLog.csv",FileMode.Create))
{
StreamWriter sw = new StreamWriter(fs);
testLog.ForEach(r => sw.WriteLine(r.ToString()));
}
当我在testLog
语句的断点处检查 ForEach
时,显然其中有数据,但此操作完成后,该文件为空白。如何将列表内容写入文件?
答案 0 :(得分:1)
添加sw.Close()
using (FileStream fs = File.Open(@"C:\Logs\TestLog\testLog.csv",FileMode.Create))
{
StreamWriter sw = new StreamWriter(fs);
testLog.ForEach(r => sw.WriteLine(r.ToString()));
sw.Close();
}
答案 1 :(得分:1)
我认为您必须最后关闭StreamWriter。 你可以尝试添加sw.Close();吗?在foreach语句之后。