码迷,mamicode.com
首页 > Windows程序 > 详细

c# 读取和写入excel数据

时间:2015-05-18 18:52:06      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

1. 读取

DataTable GetDataFromExcelByConn(bool hasTitle = false)
{
    OpenFileDialog openFile = new OpenFileDialog();
    openFile.Filter = "Excel(*.xlsx)|*.xlsx|Excel(*.xls)|*.xls";
    openFile.InitialDirectory = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
    openFile.Multiselect = false;
    if (openFile.ShowDialog() == DialogResult.Cancel) return null;
    var filePath = openFile.FileName;
    string fileType = System.IO.Path.GetExtension(filePath);
    if (string.IsNullOrEmpty(fileType)) return null;

    using (DataSet ds = new DataSet())
    {
        string strCon = string.Format("Provider=Microsoft.Jet.OLEDB.{0}.0;" +
                        "Extended Properties=\"Excel {1}.0;HDR={2};IMEX=1;\";" +
                        "data source={3};",
                        (fileType == ".xls" ? 4 : 12), (fileType == ".xls" ? 8 : 12), (hasTitle ? "Yes" : "NO"), filePath);
        string strCom = " SELECT * FROM [Sheet1$]";
        using (OleDbConnection myConn = new OleDbConnection(strCon))
        using (OleDbDataAdapter myCommand = new OleDbDataAdapter(strCom, myConn))
        {
            myConn.Open();
            myCommand.Fill(ds);
        }
        if (ds == null || ds.Tables.Count <= 0) return null;
        return ds.Tables[0];
    }
}

 

2. 写入

public static bool SaveDataTableToExcel(System.Data.DataTable excelTable, 
string filePath)
 
{
 
Microsoft.Office.Interop.Excel.Application app =
 
new Microsoft.Office.Interop.Excel.ApplicationClass();
 
try
 
{
 
app.Visible = false;
 
Workbook wBook = app.Workbooks.Add(true);
 
Worksheet wSheet = wBook.Worksheets[1] as Worksheet;
 
if (excelTable.Rows.Count > 0)
 
{
 
 int row = 0;
 
 row = excelTable.Rows.Count;
 
 int col = excelTable.Columns.Count;
 
 for (int i = 0; i < row; i++)
 
 {
 
 for (int j = 0; j < col; j++)
 
 {
 
 string str = excelTable.Rows[i][j].ToString();
 

c# 读取和写入excel数据

标签:

原文地址:http://www.cnblogs.com/ellie-test/p/4512513.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!