パスワードを忘れた? アカウント作成
12696007 journal
日記

shuichiの日記: 「Excelを開くの遅いんでどうにかしてください」4

日記 by shuichi

以前、
「Excelを開くの遅いんでどうにかしてください」1
「Excelを開くの遅いんでどうにかしてください」2
「Excelを開くの遅いんでどうにかしてください」3

と、日記に書いたが、それらファイルをコピーして大量のファイルが作られていた。
一個ずつ処理していくのは面倒なので、自分で作っているOptiOpenXMLというフリーソフトに処理を組み込んでみた。
(ここまで昨年末の話)

・・・見たのだが、内部でDOMを使っていたのだが、数百万のセルや、数十万のオートシェイプを読み込むとメモリ不足でGC走りまくり。
とてもじゃないが速度的に耐えられないことが判明。
プルパーサ使って書き直そうとしたが、要素の依存関係辿る処理が複雑になりすぎる。
結局、必要な内容のみを保持するDOM擬きを独自実装と一部の要素以下のノードをメモリ上に圧縮して持たせることで、実用的な処理速度が出るようになった。

あちこち直したので、正月休みで作ってしまうつもりが、もう2月も終わるとか・・・

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...