亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

ASP.NET(C#)讀取Excel的文件內容

2024-07-10 13:17:32
字體:
來源:轉載
供稿:網友

.xls格式       Office2003及以下版本
.xlsx格式  Office2007 及以上版本
.csv格式       以逗號分隔的字符串文本(可以將上述兩種文件類型另存為此格式)   
讀取前兩種格式和讀取后一種格式會用兩種不同的方法。

下面看程序:
頁面前臺:

復制代碼 代碼如下:


<div>       <%-- 文件上傳控件  用于將要讀取的文件上傳 并通過此控件獲取文件的信息--%>     
<asp:FileUpload runat="server" />         
<%-- 點擊此按鈕執行讀取方法--%>      
<asp:Button runat="server" Text="ReadStart" />
</div>  

后臺代碼:

復制代碼 代碼如下:


 //聲明變量(屬性)
 string currFilePath = string.Empty; //待讀取文件的全路徑
 string currFileExtension = string.Empty;  //文件的擴展名

 //Page_Load事件 注冊按鈕單擊事件
 protected void Page_Load(object sender,EventArgs e)
 {
     this.btnRead.Click += new EventHandler(btnRead_Click);
 }

 
 //按鈕單擊事件   //里面的3個方法將在下面給出
 protected void btnRead_Click(object sender,EventArgs e)
 {
     Upload();  //上傳文件方法
     if(this.currFileExtension ==".xlsx" || this.currFileExtension ==".xls")
       {
            DataTable dt = ReadExcelToTable(currFilePath);  //讀取Excel文件(.xls和.xlsx格式)
       }
       else if(this.currFileExtension == ".csv")
         {
               DataTable dt = ReadExcelWidthStream(currFilePath);  //讀取.csv格式文件
         }
 }


下面列出按鈕單擊事件中的3個方法

復制代碼 代碼如下:


///<summary>
///上傳文件到臨時目錄中
///</ummary>
private void Upload()
{
HttpPostedFile file = this.fileSelect.PostedFile;
string fileName = file.FileName;
string tempPath = System.IO.Path.GetTempPath(); //獲取系統臨時文件路徑
fileName = System.IO.Path.GetFileName(fileName); //獲取文件名(不帶路徑)
this.currFileExtension = System.IO.Path.GetExtension(fileName); //獲取文件的擴展名
this.currFilePath = tempPath + fileName; //獲取上傳后的文件路徑 記錄到前面聲明的全局變量
file.SaveAs(this.currFilePath); //上傳
}


///<summary>
///讀取xls/xlsx格式的Excel文件的方法
///</ummary>
///<param>待讀取Excel的全路徑</param>
///<returns></returns>
private DataTable ReadExcelToTable(string path)
{
//連接字符串
string connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';"; // Office 07及以上版本 不能出現多余的空格 而且分號注意
//string connstring = Provider=Microsoft.JET.OLEDB.4.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';"; //Office 07以下版本 因為本人用Office2010 所以沒有用到這個連接字符串 可根據自己的情況選擇 或者程序判斷要用哪一個連接字符串
using(OleDbConnection conn = new OleDbConnection(connstring))
{
conn.Open();
DataTable sheetsName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,new object[]{null,null,null,"Table"}); //得到所有sheet的名字
string firstSheetName = sheetsName.Rows[0][2].ToString(); //得到第一個sheet的名字
string sql = string.Format("SELECT * FROM [{0}],firstSheetName); //查詢字符串
OleDbDataAdapter ada =new OleDbDataAdapter(sql,connstring);
DataSet set = new DataSet();
ada.Fill(set);
return set.Tables[0];

}
}


///<summary>
///讀取csv格式的Excel文件的方法
///</ummary>
///<param>待讀取Excel的全路徑</param>
///<returns></returns>
private DataTable ReadExcelWithStream(string path)
{
DataTable dt = new DataTable();
bool isDtHasColumn = false; //標記DataTable 是否已經生成了列
StreamReader reader = new StreamReader(path,System.Text.Encoding.Default); //數據流
while(!reader.EndOfStream)
{
string meaage = reader.ReadLine();
string[] splitResult = message.Split(new char[]{','},StringSplitOption.None); //讀取一行 以逗號分隔 存入數組
DataRow row = dt.NewRow();
for(int i = 0;i<splitResult.Length;i++)
{
if(!isDtHasColumn) //如果還沒有生成列
{
dt.Columns.Add("column" + i,typeof(string));
}
row[i] = splitResult[i];
}
dt.Rows.Add(row); //添加行
isDtHasColumn = true; //讀取第一行后 就標記已經存在列 再讀取以后的行時,就不再生成列
}
return dt;
}

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产欧美精品一区二区| 奇米成人av国产一区二区三区| 亚洲国产另类久久精品| 亚洲999一在线观看www| 伊人伊成久久人综合网站| 色香阁99久久精品久久久| 一区二区三区四区视频| 亚洲mm色国产网站| 欧美色另类天堂2015| 欧洲s码亚洲m码精品一区| 日韩av电影在线免费播放| 福利一区视频在线观看| 久久精品色欧美aⅴ一区二区| 亚洲影视中文字幕| 久久久久久18| 亚洲无亚洲人成网站77777| 91情侣偷在线精品国产| 亚洲人成77777在线观看网| 欧美极品xxxx| 国产视频欧美视频| 九九热r在线视频精品| 色无极亚洲影院| 国产精品女人久久久久久| 久久琪琪电影院| 成人福利网站在线观看11| 欧美亚洲视频一区二区| 成人羞羞国产免费| 国产日产欧美a一级在线| 欧美黄色片视频| 国产精品永久免费观看| 久久6精品影院| 日韩黄色在线免费观看| 精品久久久久久中文字幕一区奶水| 亚洲综合中文字幕在线| 日韩国产高清视频在线| 这里只有精品久久| 亚洲国产精品人人爽夜夜爽| 国产伦精品一区二区三区精品视频| 国产在线观看精品一区二区三区| 欧美午夜精品久久久久久浪潮| 欧美精品性视频| 在线一区二区日韩| 亚洲欧美日韩在线一区| 成人观看高清在线观看免费| 日本欧美一二三区| 日韩欧美视频一区二区三区| 欧美精品久久久久a| 狠狠躁夜夜躁人人爽超碰91| yellow中文字幕久久| 午夜精品久久久久久久99热| 精品国产乱码久久久久久天美| 国产激情视频一区| 欧美尤物巨大精品爽| 亚洲精品中文字幕女同| 国产精品久久久久av免费| 国产精品一区二区三| 色噜噜国产精品视频一区二区| 欧美精品在线极品| 亚洲精品一区在线观看香蕉| 国产精品视频男人的天堂| 欧美午夜久久久| 中日韩美女免费视频网站在线观看| 久久精品久久久久久| 色综合久久精品亚洲国产| 国产亚洲欧美日韩一区二区| 久久亚洲精品毛片| 精品免费在线视频| 久久av中文字幕| 亚洲国产美女精品久久久久∴| 亚洲第一福利网站| 欧美日本国产在线| 欧美激情视频免费观看| 欧洲美女免费图片一区| 久久久久亚洲精品| 日本国产一区二区三区| 国产精品91久久久久久| 成人免费视频网址| 日韩视频在线免费| 欧美专区在线视频| 性欧美激情精品| 综合网中文字幕| 亚洲网站在线观看| 欧美激情二区三区| 欧美性资源免费| 久热精品视频在线| 在线成人一区二区| 国产精品青草久久久久福利99| 日韩电影中文字幕一区| 色偷偷av一区二区三区| 精品国产乱码久久久久久天美| 91久久精品国产91久久性色| 亚洲色图50p| 国产精品老女人精品视频| 国产日本欧美一区二区三区| 一区二区三区www| 国产视频久久久久| 一本色道久久88综合亚洲精品ⅰ| 国内精品久久久久影院优| 91精品久久久久久久久久久久久久| 久久久久国产视频| 成人免费观看网址| 亚洲欧美精品伊人久久| 国产日韩欧美在线| 亚洲激情在线观看| 中文字幕一区二区三区电影| 精品国产一区二区三区在线观看| 精品在线观看国产| 亚洲第一天堂无码专区| 中文字幕在线看视频国产欧美在线看完整| 日韩电影在线观看免费| 日本成人激情视频| 日韩专区在线观看| 亚洲最大福利网站| 亚洲国产欧美日韩精品| 欧美精品久久一区二区| 欧美在线免费观看| 欧美高清一级大片| 欧美激情一区二区三区成人| 欧美日韩高清区| 欧美精品日韩www.p站| 日韩视频在线一区| 国产亚洲免费的视频看| 中文字幕日韩欧美精品在线观看| 精品亚洲国产成av人片传媒| 欧美成人亚洲成人日韩成人| 亚洲电影免费观看| 亚洲欧美日韩在线高清直播| 欧美一区三区三区高中清蜜桃| 久久影视电视剧免费网站清宫辞电视| 欧美丝袜一区二区三区| 亚洲精品国产福利| 亚洲欧美日韩高清| 国产精品久久国产精品99gif| 亚洲护士老师的毛茸茸最新章节| 国产91色在线|免| 欧美精品制服第一页| 久热国产精品视频| 丝袜情趣国产精品| 欧美激情女人20p| 欧美日韩黄色大片| 亚洲午夜小视频| 国产成+人+综合+亚洲欧洲| 欧美激情综合亚洲一二区| 久久久999国产| 97免费在线视频| 欧美大片欧美激情性色a∨久久| 欧美一区三区三区高中清蜜桃| 日本成熟性欧美| 久久伊人免费视频| 欧美电影免费观看高清| 亚洲国产精品va在看黑人| 日韩在线观看网址| www.亚洲成人| 亚洲精品久久7777777| 亚洲成av人乱码色午夜| 欧洲精品久久久| 成人国产在线视频| 国产精品老牛影院在线观看| 精品亚洲va在线va天堂资源站| 国产精品久久一区主播| 国产99视频在线观看| 亚洲男人av在线| 亚洲国产91精品在线观看| 国产精品国模在线|