Excelシートの読み取り/書き込み/編集が簡単な2つのAPIはどれですか?これらのAPIはCSV拡張をサポートしていませんか?
File.xlsおよびfile.xlsxにJXLを使用すると、次のような例外が発生します。
jxl.read.biff.BiffException: Unable to recognize OLE stream
at jxl.read.biff.CompoundFile.<init>(CompoundFile.Java:116)
at jxl.read.biff.File.<init>(File.Java:127)
at jxl.Workbook.getWorkbook(Workbook.Java:268)
at core.ReadXLSheet.contentReading(ReadXLSheet.Java:46)
at core.ReadXLSheet.init(ReadXLSheet.Java:22)
at core.ReadXLSheet.main(ReadXLSheet.Java:72)
.xlsおよび.xlsx拡張子の両方。 Java私が使用しているバージョンはJDK1.6です
JXL (現在の「JExcel」)と Apache POI の両方を使用しました。最初はJXLを使用していましたが、現在はApache POIを使用しています。
最初に、両方のAPIの機能が同じであるものを以下に示します。
ただし、多くの違いがあります。
さらに、POIにはメインの「ユーザーモデル」APIだけでなく、スプレッドシートのコンテンツを読みたいだけの場合はイベントベースのAPIも含まれます。
結論として、より良いドキュメント、より多くの機能、積極的な開発、およびExcel 2007+形式のサポートのため、Apache POIを使用します。
POIを使用しました。
それを使用する場合は、それらのセルフォーマッタに注目してください。セルフォーマッタを作成し、セルごとに作成する代わりに数回使用すると、メモリ消費の大きな違いや大きなデータになります。
私はJXLに精通していませんが、POIを使用しています。 POIは適切に管理されており、バイナリ.xls形式とOffice 2007で導入された新しいxmlベースの形式の両方を処理できます。
CSVファイルはExcelファイルではなく、テキストベースのファイルであるため、これらのライブラリはそれらを読み取りません。 CSVファイルを自分で解析する必要があります。 CSVファイルライブラリは認識していませんが、見ていません。
Javaで「プレーン」CSVファイルを読み取るために、OpenCSVと呼ばれるライブラリがあります。こちらから入手できます。 http://opencsv.sourceforge.net/