C# 当源数据表包含少于12行时,CsvHelper CsvWriter为空
当写入流时(也可能是其他目的地),如果我的数据表包含少于12行,CsvHelper不会返回任何内容。我测试了逐个添加行,直到在字符串myCsvAsString变量中得到结果 有人遇到过这个问题吗?下面是我用来复制它的代码:C# 当源数据表包含少于12行时,CsvHelper CsvWriter为空,c#,stream,csvhelper,C#,Stream,Csvhelper,当写入流时(也可能是其他目的地),如果我的数据表包含少于12行,CsvHelper不会返回任何内容。我测试了逐个添加行,直到在字符串myCsvAsString变量中得到结果 有人遇到过这个问题吗?下面是我用来复制它的代码: var stream = new MemoryStream(); using (var writer = new StreamWriter(stream)) using (var csvWriter = new CsvWrit
var stream = new MemoryStream();
using (var writer = new StreamWriter(stream))
using (var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture))
{
if (includeHeaders)
{
foreach (DataColumn column in dataTable.Columns)
{
csvWriter.WriteField(column.ColumnName);
}
csvWriter.NextRecord();
}
foreach (DataRow row in dataTable.Rows)
{
for (var i = 0; i < dataTable.Columns.Count; i++)
{
csvWriter.WriteField(row[i]);
}
csvWriter.NextRecord();
}
csvWriter.Flush();
stream.Position = 0;
StreamReader reader = new StreamReader(stream);
string myCsvAsString = reader.ReadToEnd();
}
var-stream=newmemoryStream();
使用(var writer=新的StreamWriter(流))
使用(var csvWriter=new csvWriter(writer,CultureInfo.InvariantCulture))
{
如果(包括领导)
{
foreach(dataTable.Columns中的DataColumn列)
{
csvWriter.WriteField(column.ColumnName);
}
csvWriter.NextRecord();
}
foreach(dataTable.Rows中的DataRow行)
{
对于(var i=0;i
好的,我发现了问题,我正在刷新csvWriter,但没有刷新StreamWriter
我在csvWriter.Flush()之后添加了writer.Flush(),流就完成了。好的,我发现了问题,我正在刷新csvWriter,但没有刷新StreamWriter 我在csvWriter.Flush()之后添加了writer.Flush(),流就完成了