如何将列标题添加到Excel工作表?

时间:2015-10-26 10:34:10

标签: c# excel

private void btn_gnrt_files_Click(object sender, EventArgs e)
{ 

    if (textBox1.Text != "" && textBox2.Text != "")
    {
        //reading text file
        FileInfo theSourceFile = new FileInfo(@"" + textBox1.Text);   
        StreamReader reader = theSourceFile.OpenText();
        String filename = "";
        String text = "";
        do
        {
            text = reader.ReadLine();
            if (text != null)
            {
                //MessageBox.Show(""+state);
                String[] fname = text.Split('|'); //writiting file
                if (state == true)
                { 
                    filename = fname[1];
                    filename.TrimStart();
                    //MessageBox.Show(filename);
                    Excel.Application excel = new Excel.Application();
                    excel.Visible = true;
                    //true is append parameter
                    using (System.IO.StreamWriter writer = new System.IO.StreamWriter(@"" + textBox2.Text + @"\" + filename.TrimStart() + ".csv", true))
                    writer.WriteLine(text.Replace("|", ","));

我通过此代码获取包含数据的excel文件。但我不能 将列标题放入Excel工作表。请告诉我如何添加这些标题

<<reg no,br no,pr no,curency>>

2 个答案:

答案 0 :(得分:1)

                Microsoft.Office.Interop.Excel.Workbook xlWorkBook;
                Microsoft.Office.Interop.Excel.Worksheet xlWorkSheet;
                Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();

                if (xlApp == null)
                {
                    System.Windows.MessageBox.Show("Excel is not properly installed!!");
                    return;
                }
                xlWorkBook = xlApp.Workbooks.Add();
                xlWorkSheet = (Microsoft.Office.Interop.Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);


                xlWorkSheet.Cells[1, 1] = "reg no";
                xlWorkSheet.Cells[1, 2] = "br no"
                xlWorkSheet.Cells[1, 3] = "pr no"
                xlWorkSheet.Cells[1, 4] = "curency";

然后开展业务......

答案 1 :(得分:1)

列标题只是Excel(或CSV)中的常规单元格,因此请将它们添加为第一行。

在开始循环之前添加该标题行以写入数据行。