亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

asp.net 讀取Excel數(shù)據(jù)到DataTable的代碼

 更新時間:2010年03月16日 19:48:40   作者:  
asp.net 讀取Excel數(shù)據(jù)到DataTable的代碼,需要的朋友可以參考下。
復(fù)制代碼 代碼如下:

/// <summary>
/// 獲取指定路徑、指定工作簿名稱的Excel數(shù)據(jù):取第一個sheet的數(shù)據(jù)
/// </summary>
/// <param name="FilePath">文件存儲路徑</param>
/// <param name="WorkSheetName">工作簿名稱</param>
/// <returns>如果爭取找到了數(shù)據(jù)會返回一個完整的Table,否則返回異常</returns>
public DataTable GetExcelData(string astrFileName)
{
string strSheetName = GetExcelWorkSheets(astrFileName)[0].ToString();
return GetExcelData(astrFileName, strSheetName);
}


代碼
復(fù)制代碼 代碼如下:

/// <summary>
/// 返回指定文件所包含的工作簿列表;如果有WorkSheet,就返回以工作簿名字命名的ArrayList,否則返回空
/// </summary>
/// <param name="strFilePath">要獲取的Excel</param>
/// <returns>如果有WorkSheet,就返回以工作簿名字命名的ArrayList,否則返回空</returns>
public ArrayList GetExcelWorkSheets(string strFilePath)
{
ArrayList alTables = new ArrayList();
OleDbConnection odn = new OleDbConnection(GetExcelConnection(strFilePath));
odn.Open();
DataTable dt = new DataTable();
dt = odn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, null);
if (dt == null)
{
throw new Exception("無法獲取指定Excel的架構(gòu)。");
}
foreach (DataRow dr in dt.Rows)
{
string tempName = dr["Table_Name"].ToString();
int iDolarIndex = tempName.IndexOf('$');
if (iDolarIndex > 0)
{
tempName = tempName.Substring(0, iDolarIndex);
}
//修正了Excel2003中某些工作薄名稱為漢字的表無法正確識別的BUG。
if (tempName[0] == '\'')
{
if (tempName[tempName.Length - 1] == '\'')
{
tempName = tempName.Substring(1, tempName.Length - 2);
}
else
{
tempName = tempName.Substring(1, tempName.Length - 1);
}
}
if (!alTables.Contains(tempName))
{
alTables.Add(tempName);
}
}
odn.Close();
if (alTables.Count == 0)
{
return null;
}
return alTables;
}

代碼
復(fù)制代碼 代碼如下:

/// <summary>
/// 獲取指定路徑、指定工作簿名稱的Excel數(shù)據(jù)
/// </summary>
/// <param name="FilePath">文件存儲路徑</param>
/// <param name="WorkSheetName">工作簿名稱</param>
/// <returns>如果爭取找到了數(shù)據(jù)會返回一個完整的Table,否則返回異常</returns>
public DataTable GetExcelData(string FilePath, string WorkSheetName)
{
DataTable dtExcel = new DataTable();
OleDbConnection con = new OleDbConnection(GetExcelConnection(FilePath));
OleDbDataAdapter adapter = new OleDbDataAdapter("Select * from [" + WorkSheetName + "$]", con);
//讀取
con.Open();
adapter.FillSchema(dtExcel, SchemaType.Mapped);
adapter.Fill(dtExcel);
con.Close();
dtExcel.TableName = WorkSheetName;
//返回
return dtExcel;
}

代碼
復(fù)制代碼 代碼如下:

/// <summary>
/// 獲取鏈接字符串
/// </summary>
/// <param name="strFilePath"></param>
/// <returns></returns>
public string GetExcelConnection(string strFilePath)
{
if (!File.Exists(strFilePath))
{
throw new Exception("指定的Excel文件不存在!");
}
return "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strFilePath + ";Extended properties=\"Excel 8.0;Imex=1;HDR=Yes;\"";
//@"Provider=Microsoft.Jet.OLEDB.4.0;" +
//@"Data Source=" + strFilePath + ";" +
//@"Extended Properties=" + Convert.ToChar(34).ToString() +
//@"Excel 8.0;" + "Imex=1;HDR=Yes;" + Convert.ToChar(34).ToString();
}

相關(guān)文章

  • .NET 操作 PostgreSQL遇到的問題

    .NET 操作 PostgreSQL遇到的問題

    這篇文章主要介紹了.NET 操作 PostgreSQL遇到的問題,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • asp.net獲取select值的方法

    asp.net獲取select值的方法

    今天有個朋友問我如何使用asp.net獲取select值,以為很簡單的問題,結(jié)果發(fā)現(xiàn)自己也不知道于是搜索中發(fā)現(xiàn)了下面的這個不錯的例子,在此與大家分享
    2013-09-09
  • .NetCore?Web?Api?利用ActionFilterAttribute統(tǒng)一接口返回值格式及問題解析

    .NetCore?Web?Api?利用ActionFilterAttribute統(tǒng)一接口返回值格式及問題解析

    在實際項目開發(fā)過程中,統(tǒng)一API返回值格式對前端或第三方調(diào)用將是非常必要的,在.NetCore中我們可以通過ActionFilterAttribute來進行統(tǒng)一返回值的封裝,對.NetCore?Web?Api?統(tǒng)一接口返回值格式相關(guān)知識感興趣的朋友一起看看吧
    2022-03-03
  • ASP.NET WebAPI導(dǎo)出CSV

    ASP.NET WebAPI導(dǎo)出CSV

    這篇文章介紹了ASP.NET WebAPI導(dǎo)出CSV的方法,文中通過示例代碼介紹的非常詳細。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • MVC使用MvcPager實現(xiàn)分頁效果

    MVC使用MvcPager實現(xiàn)分頁效果

    這篇文章主要為大家詳細介紹了MVC使用MvcPager實現(xiàn)分頁效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • ASP.NET中常用的優(yōu)化性能的方法

    ASP.NET中常用的優(yōu)化性能的方法

    ASP.NET中常用的優(yōu)化性能的方法...
    2007-04-04
  • Asp.net mvc在view中用C#代碼動態(tài)創(chuàng)建元素

    Asp.net mvc在view中用C#代碼動態(tài)創(chuàng)建元素

    這篇文章主要給大家介紹了關(guān)于Asp.net mvc如何在view中用C#代碼動態(tài)創(chuàng)建元素的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • ASP.NET下母版頁和內(nèi)容頁中的事件發(fā)生順序整理

    ASP.NET下母版頁和內(nèi)容頁中的事件發(fā)生順序整理

    母版頁與內(nèi)容頁合并后事件的發(fā)生順序,有需要區(qū)別的朋友能用的到
    2009-03-03
  • asp.net讀取excel文件的三種方法示例

    asp.net讀取excel文件的三種方法示例

    這篇文章主要介紹了asp.net讀取excel文件的三種方法示例,包括采用OleDB讀取Excel文件、引用的com組件讀取Excel文件、用文件流讀取,需要的朋友可以參考下
    2014-02-02

最新評論