sudhakarthikeyan Ответов: 2

Как добавить имя столбца в excel с помощью C#


Мой код выглядит следующим образом

string connectionstring ="Server=(local);initial catalog=Test;Trusted_Connection=True";
            SqlConnection sqlConnection = new SqlConnection(connectionstring);
            SqlCommand cmd = new SqlCommand();
            SqlDataReader reader;
            DataSet ds = new DataSet();
            cmd.CommandText ="select * from Empdetails"
            cmd.CommandText += " where shifttype  = @par "
            cmd.Parameters.Add("@par", SqlDbType.Int).Value = j;
            cmd.CommandType = CommandType.Text;
            cmd.Connection = sqlConnection;
            sqlConnection.Open();
            reader = cmd.ExecuteReader();
            if (reader.HasRows)
            {
                System.IO.StreamWriter sw_In = new System.IO.StreamWriter("C:\Users\God\Desktop\DataDump\" + j + "Excel.xls");
                while (reader.Read())
                {
                    for (int i = 0; i< reader.FieldCount; i++)
                    {
                        sw_In.AutoFlush = true;
                        sw_In.Write(reader[i].ToString() +"\t");
                    }
                        sw_In.Write("\n");
                }

            }
            sqlConnection.Close();
            reader.Close();



Когда я запускаю приведенный выше код в excel запишите следующее

1    Suresh    9867689098    IN   Chennai
2    Rajesh    9840512112    IN   Chennai
3    Vikash    9844521213    IN   Chennai
4    Ramesh    9955454213    IN   Chennai
5    Kumar     9840521210    IN   Chennai



Но в таблице
select * from Empdetails

запишите следующее С именем столбца

ID    Name       Mobile      Shift    Place
1    Suresh    9867689098    IN     Chennai
2    Rajesh    9840512112    IN     Chennai
3    Vikash    9844521213    IN     Chennai
4    Ramesh    9955454213    IN     Chennai
5    Kumar     9840521210    IN     Chennai


В excel вышеприведенный столбец должен быть там. для этого, как я могу сделать в asp, net с помощью C#.

в excel с именем столбца записи должны быть там.

Что я уже пробовал:

как добавить имя столбца в excel с помощью C#

Richard MacCutchan

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

И конечно, в приведенном выше коде вы не записываете имена столбцов заголовка в файл перед всеми данными.

2 Ответов

Рейтинг:
2

Patrice T

Я думаю, что код, который дает имена столбцам, будет лучше перед циклом, обрабатывающим данные, а не внутри внутреннего цикла.

Maciej Los

Это зависит от требований ОП, но в принципе я согласен.

Patrice T

Конечно, это возможно,но это все усложняет.

Рейтинг:
1

Patrice T

Вы уже знаете, как добавлять строки данных, поступающих из SQL reader.
Вставить ряд имен столбцов не сложнее.

1) Создайте список с именами столбцов.
2) Напишите этот список точно так же, как вы делаете это со строкой данных, но там вы используете список.
3) Запишите свои строки данных как обычно.


Maciej Los

+5

Patrice T

Спасибо