Записать данные, прочитанные из базы данных в файл CSV с заголовком - C#

Узнай цену своей работы

Формулировка задачи:

Как записать данные, прочитанные из базы данных на C# в файл CSV с заголовком, т.е. чтобы в Exel увидеть табличку с "шапкой" и заголовком. Спасибо

Решение задачи: «Записать данные, прочитанные из базы данных в файл CSV с заголовком»

textual
Листинг программы
public static bool SaveDGVToCSVfile(string filename, DataGridView table, bool openInExcel)
        {
            try
            {
                StreamWriter sw = new StreamWriter(filename, false, Encoding.Unicode);
 
                List<int> col_n = new List<int>();
                foreach (DataGridViewColumn col in table.Columns)
                    if (col.Visible)
                    {
                        sw.Write(col.HeaderText + "\t");
                        col_n.Add(col.Index);
                    }
                sw.WriteLine();
                int x = table.RowCount;
                if (table.AllowUserToAddRows) x--;
 
                for (int i = 0; i < x; i++)
                {
                    for (int y = 0; y < col_n.Count; y++)
                        sw.Write(table[col_n[y], i].Value + "\t");
                    sw.Write(" \r\n");
                }
                sw.Close();                
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                return false;
            }
 
            if (openInExcel)
            {
                try
                {
                    Process newProc = Process.Start("excel.exe", filename);
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message, "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Stop);
                }
            }
            return true;
        }

Оцени полезность:

14   голосов , оценка 3.929 из 5
Похожие ответы