Экспортируйте файл csv с помощью CsvWriter и объединяйте строки в C#

Экспорт CSV по умолчанию из C#, как: RoomName | EquipmentName | EquipmentCode

Room1 - Телевидение - E01

Room1 - Микроволновая печь - E02

Room2 - Телевидение - E01

Теперь, как я могу экспортировать CSV, как на картинке http://prntscr.com/kqqehf

Как я могу сделать это с помощью csvWriter C#? Пожалуйста, помогите, спасибо.

1 ответ

Решение

Я использую класс, который я нашел в проекте кода, и это было полезно для меня. Я вроде новое программирование, но оно работает очень хорошо! В приведенной ниже ссылке приведен код, который я использовал, просто создайте класс и скопируйте в него код, включите его в основной код формы и начните его использовать. Вы можете найти примеры использования там.

https://www.codeproject.com/Articles/415732/Reading-and-Writing-CSV-Files-in-Csharp

Это не мой код, он был найден по предоставленной ссылке:) Надеюсь, я вам помог! Любой вопрос, не стесняйтесь обращаться ко мне, я буду рад помочь, точно знаю, я работаю над проектом, который экспортирует и импортирует данные из CSV-файла, используя этот класс.

Редактировать: Вот пример вывода и может быть открыт с помощью Excel, просто сохраните его с расширением CSV, используя файл IO C# в Visual Studio. Также, чтобы сохранить файл как CSV, вы можете сделать это из кода или из диалога сохранения файла. свойства.

saveFileDialog1.FileName = "CSVDATA" + DateTime.Now.ToString("yyMMdd");
saveFileDialog1.ShowDialog();
string PathName = Path.GetFullPath(saveFileDialog1.FileName);
string FileName1 = Path.GetFileName(PathName);
using (CsvFileWriter Writer = new CsvFileWriter(FileName1))
{
            CsvRow Header = new CsvRow();
            Header.Add(string.Format("{0}", "#2:30:UPD!"));
            Writer.WriteRow(Header);
            CsvRow NewRow = new CsvRow();
            for (int j = 0; j < Array.GetLength(0); j++)
            {
                NewRow.Add(string.Format("{0}", ("" + Array[j]).PadLeft(5, '0')));
                if (j == 14 || j == 29)
                {
                    Writer.WriteRow(NewRow);
                    NewRow.Clear();
                }                  
            }
}

Вывод: (просто пример, я новый форматирующий код здесь в SO D: его 15 значений на строку.)

#2:30:UPD! 
00001,65506,00010,00010,00001,00001,00001
00000,04000,03000,00600,03500,00900,00900,00150
00400,00050,00080,00001,00030,00100,00040 
00100,00000,00000,00000,00000,00300,00000,00000

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

Другие вопросы по тегам