1

excel書式設定されたテキストを含む大きなファイルからデータを読み取っています。&DataTableを介してオブジェクトにデータを抽出します。ただし、抽出されたデータには、書式設定された情報は含まれていません。oleDBConnectionGetOleDbSchemaTable

私の要件は、取り消し線以外のテキストのみを抽出する必要があるということです。

読んでいる間は何の問題もありませんし、すべてが完全に問題ありません。excelしかし、私の抽出は、解決策を見つけることができないテキスト形式に基づいている必要があります。

に追加するconnectionStringものは次のとおりです。

connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + fileName + "; Extended Properties=\"Excel 12.0 Xml;HDR=YES;Mode=Read;ReadOnly=True;\"";

制約:

  1. OleDBConnection の使用 - 相互運用なし

  2. DataTable オブジェクトへの読み取り

4

3 に答える 3

1

私の知る限り、これは ACE ドライバーだけでは実行できません。そうは言っても、制約が解除された場合は、これが使用するツールです: http://closedxml.codeplex.com/

于 2012-11-08T04:39:45.730 に答える
0

Interopを使用したくない場合は、「OpenXml」を使用してフォーマット情報を取得する必要があります。他に選択肢はありません。正確さのためだけに言及しているBiffがありますが、接続文字列はXMLを明確に示しているため、Biffは使用できません。

「OpenXml」を開いたら、範囲/テーブル/セルの読み取りを「シミュレート」できますDataTable

制約がある場合、フォーマット情報を提供するのは#1のみです。

于 2012-11-08T04:48:35.893 に答える
0

オープン XML を使用するようにアプローチを切り替える必要があります。COM ではなく .NET です

情報: http://support.microsoft.com/kb/840817

SDK をダウンロード: http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=5124

于 2012-11-08T04:42:12.640 に答える