A arancibia
A arancibia

Reputation: 281

Adding headers to a export CSV file from StreamWriter C# application

I have a C# application and this outputs into a CSV file some parameters from a SQL server. I have all the data inside separated by comma but I am missing the headers, do you have any ideas how to add the column headers?

Here you have my code.

SqlDataReader reader = sqlCmd.ExecuteReader(); 
                    using (System.IO.StreamWriter file = new System.IO.StreamWriter(outCsvFile)) 
                    {
                        while (reader.Read())
                            file.WriteLine(reader[0].ToString() + ',' + reader[1].ToString() + ',' + reader[2].ToString() 
                                + ',' + reader[3].ToString() + ',' + reader[4].ToString() + ',' + reader[5].ToString())
                    }

Upvotes: 0

Views: 1962

Answers (1)

Praveen Paulose
Praveen Paulose

Reputation: 5771

You can use reader.GetName() to fetch the column names.

SqlDataReader reader = sqlCmd.ExecuteReader(); 
using (System.IO.StreamWriter file = new System.IO.StreamWriter(outCsvFile)) 
{
      file.WriteLine(reader.GetName(0) + ',' + reader.GetName(1) + ',' + reader.GetName(2) 
                            + ',' + reader.GetName(3) + ',' + reader.GetName(4) + ',' + reader.GetName(5));
      while (reader.Read())
          file.WriteLine(reader[0].ToString() + ',' + reader[1].ToString() + ',' + reader[2].ToString() 
                            + ',' + reader[3].ToString() + ',' + reader[4].ToString() + ',' + reader[5].ToString())
}

Upvotes: 1

Related Questions