0

非常に大きな Excel ファイルがあります。約 100 万行あり、サイズは約 400MB です。このファイルへの System.Data.IDbConnection を確立する必要があります。今のところ、私は2つのアプローチを試みました:1)

System.Data.OleDb.OleDbConnection("provider=Microsoft.ACE.OLEDB.12.0;Data Source='D:\\file.xls';Extended Properties='Excel 12.0;HDR=YES;IMEX=1';");

2)

System.Data.Odbc.OdbcConnection("Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};DBQ=<FILE>;ReadOnly=True;Extended Properties=\"Excel 12.0;HDR=Yes;IMEX=1\"")

どちらの接続も、小さなファイル (25MB) の場合は問題なく機能します。ただし、25MB のファイルでも、接続を開くのに約 4 秒かかります。

350MB のファイルを使用する場合、この単純なコマンドは次のとおりです。

connection.Open();

3分以上かかり、接続が遅くて使えません。

大きな Excel ファイルを読み取るための高速な IDbConnection を取得するための無料のソリューションはありますか? 助けてくれてありがとう。

4

1 に答える 1

1

別のアプローチを試してみてください。おそらく、de Excel シートがリンクされているアクセス データベースを使用すると、時間を稼ぐことができます。Access と Excel の接続は奇妙ですが、多くの場合、Excel ファイルをインポートするよりも高速です。

于 2012-10-18T20:52:06.770 に答える