0

c# を使用して .xls フライを読み込もうとしています。

これは私のコードです

OleDbCommand command = new OleDbCommand("Select [Id], [Name], [Email] from [sheet$]", connection);

OleDbDataAdapter objAdapter = new OleDbDataAdapter();
objAdapter .SelectCommand = command;

DataSet objDataset = new DataSet();

objAdapter .Fill(objDataset1);
DataView dv = objDataset .Tables[0].DefaultView;

for (int i = 0; i < dv.Count; i++)
{
    if (dv[i][0] != DBNull.Value ) 
    {
    }
}

しかし、Excelシートのセルには緑色のマークがあり、読み取れません。

ここに画像の説明を入力

それはヌルだと言います。では、この細胞のように読むにはどうすればよいでしょうか?

ありがとうございました。

4

2 に答える 2

1

私の過去の経験に基づいて、Excel はおそらく各列のデータ型について最善の推測を行っており、時にはそれが間違っていることもあります。想定されるデータ型に一致しないものはすべて null として返されます。特に IMEX 設定に関しては、以下を参照してください。

http://www.connectionstrings.com/excel#microsoft-jet-ole-db-4-0

于 2013-05-12T23:55:24.757 に答える