2016-04-25 12 views
-2

私はapache-poi 3.5のJavaアプリケーションを持っています。Microsoft Sql Serverに* .xls * .csv * .xlsxを保存

私のデータベースはMicrosoft Sql Serverです。

私のアプリケーションで私はアップロードを行い、私のファイル(*.xls*.csv*.xlsx)を直接私のデータベースに保存することができるかどうかを知りたいですか?

+0

ファイル自体(BLOBとして)またはファイル内のデータ(スプレッドシートをSQLテーブルにインポートする)を保存しようとしていますか?いずれにせよ、可能です。 –

答えて

1

あなたは)自分のバイナリ同等(byte[])にファイルを変換し、あなたが適切にファイルを再構築することができるように、内容だけでなく、ファイル名を格納するVARBINARY(MAX)フィールドを使用して検討することもでき:

// Retrieve the byte[] data for your file 
byte[] data = Files.readAllBytes(new File("/path/to/file").toPath()); 
// Write this data to a VARBINARY(MAX) field in SQL here 

これに対処するにはさまざまなアプローチがありますが、これは最も素朴な方法です。

+0

ok、どうすれば私のファイルをバイナイに変換できますか? – Mercer

+0

これを処理する方法はかなりあります。 [関連するディスカッション](http://stackoverflow.com/q/858980/557445)では、さまざまな問題に対処しているため、それは単なる問題です。基本的には、あなたのファイル名を渡すか、あなたのファイルを指し示す 'InputStream'を渡し、そのファイルの対応するデータを' byte [] 'で取り出したいので、それをあなたのデータベースに格納することができます。 –

+0

私はjava 1.5を使用しています。 'Files'メソッドはありません – Mercer

関連する問題