我正在尝试使用CSVHelper nuGet包创建一个csv文件
这是代码
public ActionResult Test()
{
var ms = new MemoryStream();
var sr = new StreamWriter(ms);
var csv = new CsvWriter(sr);
csv.WriteField("sd");
csv.WriteField("sd");
csv.WriteField("sd");
csv.WriteField("sd");
//ms.Seek(0, 0);
sr.Flush();
//ms.Position = 0;
var len = ms.Length;
return File(ms, "text/csv", "test.csv");
}
但是,该文件始终为空白
我在这里读了几个问题,建议需要刷新StreamWriter.该位置移至0.但是,我尝试过,它似乎没有工作
我也尝试使用MemoryStream,StreamWriter和CSVWriter的语句
我已经尝试了所有这些,它仍然是空白的
更重要的是,MemoryStream的长度始终为零
我究竟做错了什么?
最佳答案 弄清楚了 – 我需要将一个字节数组而不是一个流传递给FileContentResult:
return File(ms.ToArray(), "text/csv", "test.csv");