分享

C# 读取Excel文件 .

 mylore 2011-11-29
166人阅读 评论(0) 收藏 举报

1.引入相应的命名空间:

using System;  
  1. using System.Collections.Generic;  
  2. using System.Text;  
  3.   
  4. using System.Windows.Forms;  
  5. using System.Data;  
  6. using System.Data.OleDb;  
  7. using System.Data.SqlClient;  

 

2.读取Excel文件,将内容存储在DataSet中 

/// <summary>   
  1.        /// 读取Excel文件,将内容存储在DataSet中   
  2.        /// </summary>   
  3.        /// <param name="opnFileName">带路径的Excel文件名</param>   
  4.        /// <returns>DataSet</returns>   
  5.        public static DataSet ExcelToDataSet(string opnFileName)  
  6.        {  
  7.            string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + opnFileName + ";Extended Properties=/"Excel 8.0;HDR=YES;IMEX=1/"";  
  8.            OleDbConnection conn = new OleDbConnection(strConn);  
  9.            string strExcel = "";  
  10.            OleDbDataAdapter myCommand = null;  
  11.            DataSet ds = new DataSet();  
  12.            strExcel = "select * from [sheet1$]";  
  13.            try  
  14.            {  
  15.                conn.Open();  
  16.                myCommand = new OleDbDataAdapter(strExcel, strConn);  
  17.                myCommand.Fill(ds, "dtSource");  
  18.                return ds;  
  19.            }  
  20.            catch (Exception ex)  
  21.            {  
  22.                //MessageBox.Show("导入出错:" + ex, "错误信息");   
  23.                Console.WriteLine(ex);  
  24.                return ds;  
  25.            }  
  26.            finally  
  27.            {  
  28.                conn.Close();  
  29.                conn.Dispose();  
  30.            }  
  31.        }  

 

3.将读取出来的数据插入到数据库

/// <summary>   
  1. /// 保存所有信息   
  2. /// </summary>   
  3. public static void SaveAll(DataSet ds)  
  4. {  
  5.     foreach (DataRow row in ds.Tables[0].Rows)  
  6.     {  
  7.         Console.WriteLine("{0}/t{1}/t{2}", row[0], row[1], row[2]);  
  8.   
  9.         UserInfo userinfo = new UserInfo();  
  10.         userinfo.UserName = (string)row[1];  
  11.         userinfo.UserPwd = (string)row[2];  
  12.   
  13.         add(userinfo);  
  14.     }  
  15. }  
  16.   
  17.   
  18. private static void add(UserInfo userinfo)  
  19. {  
  20.     string sqlCon = "Server=.;uid=sa;pwd=123;DataBase=accp"//连接字符串   
  21.     SqlConnection con = new SqlConnection(sqlCon); //获取连接对象   
  22.   
  23.     SqlCommand com = new SqlCommand("insert into userinfo values('" + userinfo.UserName + "','" + userinfo.UserPwd + "')", con);  
  24.     con.Open();  
  25.     int rows = com.ExecuteNonQuery();  
  26.     if (con != null)  
  27.     {  
  28.         con.Close();  
  29.     }  
  30. }  

 

 

 

 

 

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多