JDBCを介してOracleでExcelファイルをCLOBに変換する方法について、誰かがアイデアを提供できますか。JDKの一部として利用可能なAPIを使用してExcelファイルを文字列に変換する方法を知りたいのですが、文字列からCLOBへの変換は簡単です。前もって感謝します。同様の質問がすでに提起されている場合は、親切にリンクを提供してください。
3 に答える
テキスト形式のスプレッドシートの表現は何ですか? タブでインデントされた値? 式?xls ファイルに複数のページがある場合はどうなりますか?
本当にしたいことがファイルをデータベースに保存することである場合は、BLOB を使用してバイトとして保存します。
バイナリの Excel ドキュメントを読み取るには、標準の Java API の外側にライブラリが必要です。
JExcelApiを使用して Excel ドキュメントを読み取り、ドキュメントを読み取るときに CSV 文字列を作成できます。
外部ライブラリを使用したくない場合は、フィールド タイプを blob に変更し、java.sql.PreparedStatment の setBlob メソッドを使用して FileInputStream を渡します。
データを解析する (コンテンツを読み取る) 必要がある場合は、Apache POIのようなライブラリを使用できます。
標準 API のみを使用する場合は、Excel を CSV ファイルとして保存し、そのファイルをコンマ区切りの値リストとして処理します。これは、readline を使用して各行を読み取り、文字列の split メソッドを使用してその行を値に分割することで簡単に実行できます。
データを解析する必要がない場合は、最初に Excel を文字列に変換するのではなく、データをファイルから直接 CLOB にストリーミングする必要があります。例は次の場所にあります: http://www.oracle.com/technology/sample_code/tech /java/sqlj_jdbc/files/advanced/LOBSample/LOBSample.java.html