C#导入EXCEL时,在同一行记录中,有某些记录无法读取到....
C#导入EXCEL时,在同一行记录中,有某些记录无法读取到....
代码如下:
string strCon=@ " Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = "+myfname.ToString()+ ";Extended Properties=Excel 8.0 ";
OleDbConnection myconn = new OleDbConnection(strCon);
myconn.Open();
OleDbCommand ss = new OleDbCommand( " ",myconn);
ss.CommandType = CommandType.Text;
ss.CommandText=@ "SELECT * from [Sheet1$] ";
OleDbDataReader myReader=ss.ExecuteReader();
while(myReader.Read())
{
string sqlcom= "INSERT INTO SET_BOM (SIZE,BOM_CON ) VALUES ( "+myReader[1].ToString().Trim()+@ " ', "+myReader[2].ToString().Trim()+@ " ') ";
}
myReader[2]的数据经常性丢失,但是不是所有的表格都会丢失.....
各路英雄解惑.
------解决方案--------------------连接字符串最后的改成 'Excel 8.0;HDR=YES;IMEX=1 '
原因是ms的问题...如果没这些...读取时候就跟第一行的类型...
比如第一行是文字,后边的行有数字,就读不出来了.