- - PR -
blobデータの取得方法
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-06-23 22:39
かるあさん有難う御座います。
HtmlEncode というヒントから HtmlDecode を行ったところ正常に表示されました。 なぜこうなっていたかは??ですが。。。 ただ、いくつかDBからアイコンをとっていると、画像が表示されない ファイルがいくつかありました。 壊れてはいないようですが、ファイルの種類が違うようです。。。 Response.ContentType = "image/jpeg"; で指定する値はDBの情報を元に設定は出来ないのでしょうか? | ||||||||
|
投稿日時: 2006-06-24 00:41
ヒントになったようでよかったです。
格納するときに表示用の画像タイプを一緒にDBに登録するとか 一律 jpeg に変換してから格納するとかしたほうが バイナリから画像タイプを推測するより簡単だと思いますよ | ||||||||
|
投稿日時: 2006-06-24 09:49
かるあさん有難う御座います。
かるあさんの仰る通り 一律同じフォーマットで統一するといいのですが、 すでに、登録が完了してあるDBに対して 参照をする機能のみを追加しようとしております。 (本来は統一して登録するようにすべきだったのですが。。。) なので、どうしてもバイナリから画像タイプをしたいと思っておりますが。。。 | ||||||||
|
投稿日時: 2006-06-25 21:17
2005 ということなので、それ用のページがあったと思います。 やることは同じなんだけどね。。。 | ||||||||
|
投稿日時: 2006-06-25 21:49
やったことが無いので多分ですみませんが
バイナリストリームから Bitmap オブジェクトを作って RowFormatを参照したらいけませんか? http://msdn2.microsoft.com/ja-JP/library/system.drawing.image.rawformat.aspx | ||||||||
|
投稿日時: 2006-06-25 21:57
> 2005 ということなので、それ用のページがあったと思います。
> やることは同じなんだけどね。。。 ashx(ジェネリックハンドラ)ファイルですね。 継承元とかメソッドとかaspxファイルとはちょっと違ってますけど、データを書き出すということなら同じように使えます。 aspxファイルが持っているページをレンダリングする仕組みとかがない分ちょっとだけ軽い処理になります。 | ||||||||
|
投稿日時: 2006-06-26 19:59
皆様ありがとうございます。
>かるあさん かるあさんの教えていただいた方法を試してみたのですが、 まずBLOBをImageに変換するところで扱けてしまいました。 なんとかデータの読み取りはできたのですが、Imageに変換するときに 「指定したパラメータは有効ではありません」 というエラーが@ででます。 A、Bの時点で総Byte数は正しく取れているみたいなので データの読み取りは問題ないと思うんですが。。。 アドバイスをお願いできますでしょうか? Response.BinaryWrite(datareader.Item("IMAGE")) Dim b(32767) As Byte Dim c As Long = datareader.GetBytes(0, 0, b, 0, 32767)B Dim d As New System.IO.MemoryStream(c)A Dim e As New System.Drawing.Bitmap(d)@ またcontenttypeの指定ですが、仰るとおり、"text/html"と指定しても 指定しなくても画像が正しく表示されるのですが、 指定はあまり意味がないのでしょうか? | ||||||||
|
投稿日時: 2006-06-26 22:02
このあたりが参考になると思います
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&mo=16102&namber=16102&space=0&rev=0&page=0&no=0 |