2013-01-14 190 views
0

在我的asp.net动态数据项目中,我想使用合适的Microsoft技术(不是Excel)读取excel文件。有人说他们是服务器端的工具吗? 我想读一个表中的前几列数据?读取excel文件

任何建议或方向去哪里?

+0

http://www.bing.com/search?q=reading+excel+asp.net&src=IE-SearchBox&FORM=IE8SRC您是否第一次尝试搜索? – Anonymous

+0

NPOI是一个很好的XLS文件格式的开源工具。但同意,快速搜索。 – sgeddes

+0

是啊,搜索ATM,我只是觉得有经验的人在这样的任务上可能能够分享他们用过的东西? – John

回答

2

在回答您的意见,看看这里:

http://www.codeproject.com/Articles/37055/Working-with-MS-Excel-xls-xlsx-Using-MDAC-and-Oled

下面是一些(未经测试)的代码,让你开始。

string connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0; 
          Data Source=c:\\testexcel.xls; 
          Extended Properties\"Excel 8.0;HDR=YES\""; 
string cmdText = "SELECT * FROM [Sheet1$]"; 
using(conObj = new OleDbConnection(connectionstring)) 
{ 
    using (OleDbCommand cmd = new OleDbCommand(createTableScript, conObj) 
    { 
     OleDbDataAdapter adpt = new OleDbDataAdapter(cmd); 
     DataSet ds = new DataSet(); 
     adpt.Fill(ds,"w1"); 
    } 
} 

祝你好运。

0

要么你可以使用OLEDB对象,也可以采取使用互操作的对象来读取Excel文件中的每个细胞,并在下面的代码片段我已经使用OLEDB将其插入数据库 请参见下面的代码片段 并获取从值excel

string objCON = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=EXcel_file_path;Extended Properties='Excel 8.0;HDR=Yes;'" 
using(OleDbConnection objCon = new OleDbConnection(objCON)) 
{ 
    objCon.Open(); 
    OleDbCommand objCMD = new OleDbCommand("select * from [Sheet1$]", objCon) 
    using(OleDbDataReader objDR = objCMD.ExecuteReader()) 
    { 
     while(objDR.Read()) 
     { 
      messageBox.Show("value of row1 and column 0" + dr[0]); 
     } 
     if(objDR != null) 
     { 
    objDR.Close(); 
    objDR = null; 
     } 
    } 
}