• C# 将表格数据保存到Excel文件中(


    前提应该是:电脑必须有安装Excel
    正确代码:
    string path = System.Environment.CurrentDirectory+"\"+DateTime.Now.ToString("yyyyMMddHHmmssfff");
    Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application(); 
    int rowIndex = 1;
    int colIndex = 0; 
    excel.Application.Workbooks.Add(true); 
    foreach (DataColumn col in dt.Columns)
    {
        colIndex++; excel.Cells[1, colIndex] = col.ColumnName;
    }
     foreach (DataRow row in dt.Rows) 
     { 
         rowIndex++;
         colIndex = 0; 
          foreach (DataColumn col in dt.Columns) 
          { 
        colIndex++; 
          excel.Cells[rowIndex, colIndex] = "'"+row[col.ColumnName].ToString();
     }
     } 
     excel.Visible = false; 
    excel.ActiveWorkbook.SaveAs(path + ".XLS ", Microsoft.Office.Interop.Excel.XlFileFormat.xlExcel7,     null, null, false, false, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, null,     null, null, null, null); 
     excel.Quit();
     excel = null; 
     GC.Collect();//垃圾回收
    1、在过程中,因为要导出的数据中有int型数据,而且数据长度为12,在导出到Excel中的时候变成了科学计数    的方式
    2、导出的数据中有的不是int型数据,为varchar类型数据,但是在导出的时候数据含有“E” 的数据最后导出到Excel中的时候显示格式也是为科学计数的方式
     
    解决方法:源代码为excel.Cells[rowIndex, colIndex] = row[col.ColumnName].ToString();为了保证导出的数     据正确,最后将数据导成了文本格式,即在row[col.ColumnName]前加“'”,意思为表示导出的格式为文本     格式

     http://blog.sina.com.cn/s/blog_6e294ffc0101bdjl.html
  • 相关阅读:
    排球计分的完善
    排球计分(总结)
    排球计分(八)用户注册、验证
    排球计分(七)看一下运行结果
    排球计分(六)view的实现
    排球计分(五)Controller的实现
    排球计分(四)Model的实现
    排球计分(三)架构概要设计
    排球计分(二)需求分析和数据库设计
    排球计分程序重构(六)
  • 原文地址:https://www.cnblogs.com/xihong2014/p/13790020.html
Copyright © 2020-2023  润新知