Экспорт списка С# в файл Csv

Я пытался экспортировать свой список С# в файл Csv. Все настроено хорошо. Но дело в том, что полевой сепаратор работает неправильно. его отображение, как, моя строка с "в конце (например: 0000324df" ). Вот мой код контроллера.

IEnumerable stockexpo = stockexp; // Assign value
 MemoryStream output = new MemoryStream();
 StreamWriter writer = new StreamWriter(output, Encoding.UTF8);
 writer.Write("ItemNo,");
 writer.Write("Repeat Count");
 writer.WriteLine();
 foreach (StockResult order in stockexpo)
 {
 writer.Write(String.Format("{0:d}", order.ItemNumber));
 writer.Write("\"");
 writer.Write(",");
 writer.Write("\"");
 writer.Write(order.Count);
 writer.Write("\"");
 writer.Write(",");
 writer.WriteLine();
 }
 writer.Flush();
 output.Position = 0;
 return File(output, "text/comma-separated-values", "stockexp.csv");

Мне нужно знать, как я могу соответствующим образом отделить значения полей. Любой может помочь мне в этом.

1 ответ

writer.Write("\"");

Эта строка кода будет выводить "каждый раз. Зачем это вообще?

Кроме того, у меня не было бы запятой перед WriteLine, так как нет необходимости ограничивать конец файла.

IEnumerable stockexpo = stockexp; // Assign value
 MemoryStream output = new MemoryStream();
 StreamWriter writer = new StreamWriter(output, Encoding.UTF8);
 writer.Write("ItemNo,");
 writer.Write("Repeat Count");
 writer.WriteLine();
 foreach (StockResult order in stockexpo)
 {
 writer.Write(order.ItemNumber);
 writer.Write(",");
 writer.Write(order.Count);
 writer.WriteLine();
 }
 writer.Flush();
 output.Position = 0;
 return File(output, "text/comma-separated-values", "stockexp.csv");

licensed under cc by-sa 3.0 with attribution.