0

metaModelを使用してクエリを実行しているxlsスプレッドシートがありますが、xlsファイルは更新されないため、jarファイルに保持したいと思います。データコンテキストの作成に使用されるメソッドでは入力ストリームが許可されていないため、次のコードを使用してみました。

DataContext dataContext = DataContextFactory.createExcelDataContext(getClass().getResourceAsStream("database.xls"));

残念ながら、これは機能しません。これは、メソッドcreateExcelDataContextが入力ストリームをパラメーターとして受け取らないためです。ファイルをjarファイルに保持する方法はありますか?

これを行う最も簡単な方法は、簡単に実行できるため、csvにエクスポートすることです。

4

1 に答える 1

2

InputStream から他の種類のコンテキストを作成できることを考えると、これは Excel の制限であり、ファイル システム上にない場合は Excel ファイルを開くことができないと思います。

jar からファイルを抽出し、そのコンテンツを一時ファイルにコピーすることを検討してください。一時ファイルは、アプリケーションの終了時に削除される可能性があります。File.createTempFile()およびFile.deleteOnExit( ) を参照してください。

于 2012-06-24T19:10:32.687 に答える