[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends] Re: [jfriends] getImageのキャッシュをOffにするには?




こんにちは,岸田@xxxxxxxxxxタイムインターメディアです.
水野さん,お仕事,お疲れさまです.

Taturou Mizuno wrote:
> 水野@xxxxxxxxxxタイムインターメディアです。
> 
> JavaのgetImageは、内部キャッシュを持っているようで、URLが同じ時には、
> 古いイメージを表示してしまうという現象がでて、困っています。
> 
> 今までに調べた中では、ストリームの URLConnection  クラスに setUseCashes
> というメソッドがあるのですが。これをgetImageに応用する方法が分からず。
> 
> 通常の(キャッシュをOffにした)ストリームでもImageのバイトコードはとって
> 来れるのですが、これからImage Objectsを生成する方法が分からず。
> 
> ようするに、困っています。
> 
> 情報のポインターだけでも、教えて下さると非常に助かるのですが。
> 
> イメージキャッシュをクリアする方法でも結構です。


以前に byte配列からImageを作ったことがあるのを思い出しました.
そのときは,

     try {
            InputStream inputStream 
                    = getClass().getResourceAsStream(fileName);

            byte[] buffer = new byte[inputStream.available()];
            inputStream.read(buffer);
            image = Toolkit.getDefaultToolkit().createImage(buffer);
        } catch (Exception e) {
        }

という感じで書きました.
ここで buffer を URLConnection  クラスの setUseCashes を作った
ものに取り替えてみてください.

それから,前に使っていた image は image.flush() しておくという
のが効くかもしれません.


岸田ゆき枝
yukie@xxxxxxxxxx