• 締切済み

画像データの表示方法

プログラムじゃないですが。 Oracle内にロングバイナリで画像データが保存されております。 これをエクセル上に画像で表示させたいのです。 どのようにすれば可能なものでしょうか・・・。

みんなの回答

回答No.3

ANo.2です。 すみません。 oracleについてはわからないので、どなたかわかる方にお願いします。

回答No.2

ANo.1です。 どういう形式でDB内に書き込んであるのかがわらないのですが、とりあえず適当なファイル名で書き出して読み込めるか試してください。 ファイルと同じ形式で書き込んであれば、自動的にjpgと判断してくれます。 Oracle無いので、b(dim b() as byteで定義されたバイトデータ)に読み込んだ時点とします。 fh = FreeFile Open "c:\test.jpg" for binary as #fh Put #fh,,b Close #fh Sheet1.Pictures.Insert("c:\test.jpg") 表示しますか?

muzi222
質問者

補足

本当に何度もごめんなさい。 この「適当なファイル名で書き出す」方法がどうしてもわからないのです。 エクセルへのペーストの話は外して、単に「DB内に格納されたJPGの画像データをファイルに書き出す方法」がわかれば後はなんとかなりそうなんですが…申し訳ないです。 SI OBJECT BLOWSERでDB内の格納データを見たところ、 00 03 A0 B0 90 00 00 00 00 00 23 44 90 00 00 00 ・・・・・・のような感じで格納されているようです。 JPGのデータですよねこれ。 これをSQL*PLUSでSELECT文組んで抽出しようとすると F とこれだけしか表示されません(;; ちなみにSELECT文は  select (カラム) from (テーブル) where (条件); ってこれだけなんですが、なんか形式指定とかする必要があるのでしょうか…。

回答No.1

画像の形式がわからないのですが・・・ 1.一度ファイルに書き込んで、Sheet1.Pictures.Insert("ファイル名")とかする。 2.WindowsのAPIでクリップボードにデータを書き込んで、クリップボード経由でpasteする。 他にスマートな方法があれば別ですが、とりあえず間違いないのは1だと思います。

muzi222
質問者

補足

ごめんなさい、この「一度ファイルに書き込む」方法が分からないのです・・・ DB内ではロングバイナリで保持しており、これをどうやって画像形式でファイル保存するものでしょうか? すみません、形式はjpgでした。引き続きお願い致します・・・

関連するQ&A

専門家に質問してみよう