サーブレットでのjpgファイルをgifに変化して
表示を行いたいのですがjpg表示の段階で詰まっています。
よきアドバイスをお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

>gifのライセンス問題はご存じですか?



gifで使っている圧縮アルゴリズムの特許の件なら
何年も前に期限が来て切れましたけど?

http://e-words.jp/w/LZWE789B9E8A8B1.html
http://www.itmedia.co.jp/news/articles/0406/21/n …
    • good
    • 0

 画像の読み込みと変換はImageIOでできます。


それをコンテンツタイプ"image/gif"で送信すれば、ブラウザのほうでGIF画像として表示してくれます。

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.imageio.*;
import java.awt.image.*;

public class imageconvert extends HttpServlet {

public void doGet(HttpServletRequest req, HttpServletResponse res) {

try {

BufferedImage ImageBuffer = ImageIO.read(new File(getServletContext().getRealPath("/001.jpg")));

res.setContentType("image/gif");
ImageIO.write(ImageBuffer, "gif", res.getOutputStream());

} catch (Exception ex) { System.out.println(ex.toString()+ "::Get"); };

};

}
    • good
    • 0

こんにちわ。

あまり役に立たないかもしれませんが・・
gifに変換したいとのことですが、なぜ今のご時世にgif?
gifのライセンス問題はご存じですか?
最近はみなさんpngを使ってるみたいです。
png変換ソフトならvectorとか窓の社にありますよ。
gifじゃないと駄目というのであれば下のホームページで
画像変換ソフト(シェア)があります。

参考URL:http://www.tocka.com/indexj.html
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qサーブレット-サーブレットの通信で文字列を送りたいのですが

サーブレット間の通信で文字列(String)を送りたいのですが
うまく受け取れません。
URLEncoder.encodeをつかって変換して送り、
URLDecoder.decodeで受けとってます。お願いします。

Aベストアンサー

具体的に、どうなってしまうのかが分からないと、答え様がないですね。

(1)最初の文字列
(2)URLEncoder.encodeの結果
(3)URLDecoder.decodeの結果
が提示されていると、有力なヒントになるはず。差し支えなければご提示を。

Qjsp&サーブレットにてjpgやzip等のファイルを別フォルダにコピー&貼り付けの処理

現在jsp、サーブレット、ビーンにて
画像ファイルやzipファイルなどをアップロードできるサイトを作成していまして、アップロードについては
jakartaのfileuploadで特定のフォルダにアップロードする処理は上手くいったのですが、
アップロードしたファイルを、別のフォルダにコピー&貼り付けさせるような処理を行いたいと思っています。

java.ioについて調べてみると
txtファイルの中身を読み込んだり書き込んだりする
処理しか見つける事ができず、つまずいております。

どなたかjpgやzip等を別フォルダへの
解説をしているサイトをご存知でしたら
教えていただけますでしょうか。
もしくはあのクラスを利用すれば出来る等でも
結構ですので、すみませんがご教授よろしくお願いします

Aベストアンサー

InputStream,OutputStreamを使えばバイナリ処理(1バイト単位での読み書き)ができます。

そのままでは効率が悪いので、これにバッファーを付ける意味で、BufferedInputStreamなどを一緒に使います。

Q始めてのサーブレットでつまづいています。アドバイス下さい。

【参考ファイル】
http://www.hellohiro.com/servlet.htm
-----------------------------------------------------------
【ソース HelloWorldServlet.java】
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorldServlet extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// ContentTypeを設定
response.setContentType("text/html; charset=Shift_JIS");
// 出力用PrintWriterを取得
PrintWriter out = response.getWriter();
// 出力
out.println("<html>");
out.println("<head>");
out.println("<title>Hello World Servlet</title>");
out.println("</head>");
out.println("<body>");
out.println("Hello World");
out.println("</body>");
out.println("</html>");
}
}
-----------------------------------------------------------
【バージョン】
[java]
C:\j2sdk1.4.2_06
[Tomcat]
C:\Program Files\Apache Software Foundation\Tomcat 5.5
-----------------------------------------------------------
【環境変数】
[CLASSPATH]
.;C:\Program Files\Java\j2re1.4.1_02\lib\ext\QTJava.zip
[Path]
C:\j2sdk1.4.2_06\bin;C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar
-----------------------------------------------------------
【エラー内容】
C:\Program Files\Apache Group\Apache2\htdocs\java\hello>javac HelloWorldServlet.
java
HelloWorldServlet.java:2: パッケージ javax.servlet は存在しません。
import javax.servlet.*;
^
HelloWorldServlet.java:3: パッケージ javax.servlet.http は存在しません。
import javax.servlet.http.*;
^
HelloWorldServlet.java:5: シンボルを解決できません。
シンボル: クラス HttpServlet
場所 : HelloWorldServlet の クラス
public class HelloWorldServlet extends HttpServlet {
^
HelloWorldServlet.java:6: シンボルを解決できません。
シンボル: クラス HttpServletRequest
場所 : HelloWorldServlet の クラス
public void service(HttpServletRequest request,
^
HelloWorldServlet.java:7: シンボルを解決できません。
シンボル: クラス HttpServletResponse
場所 : HelloWorldServlet の クラス
HttpServletResponse response)
^
HelloWorldServlet.java:8: シンボルを解決できません。
シンボル: クラス ServletException
場所 : HelloWorldServlet の クラス
throws ServletException, IOException {
^
エラー 6 個

C:\Program Files\Apache Group\Apache2\htdocs\java\hello>

【参考ファイル】
http://www.hellohiro.com/servlet.htm
-----------------------------------------------------------
【ソース HelloWorldServlet.java】
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorldServlet extends HttpServlet {
public void service(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
// ContentTypeを設定...続きを読む

Aベストアンサー

C:\Program Files\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar は、

PATH ではなく、CLASSPATH に追加してください。

PATHは、実行するコマンドをさがすため、

CLASSPATH は、コンパイルするときに利用されるライブラリを指定します。

Qサーブレットでの通貨表示について

現在、Javaサーブレットでブラウザにデータの表示をする際に通貨記号を表示させる為に、NumberFormatクラスのgetCurrencyInstanceを使用して、表示させようとしているのですが、String型で負の数を表示する時に例えば「-$192.42」と表示したい所を、サーブレットを動かしてブラウザで結果を表示させたら「($192.42)」と括弧が付いて表示されるので、どのようにしたらブラウザで「-$192.42」と表示されるのでしょうか?

ちなみに作成したコードは以下のとおりです。

try {
  double dtdouble = Double.parseDouble(formatter1);
  NumberFormat nf = (NumberFormat)NumberFormat.getCurrencyInstance(Locale.US);
  nf.setMaximumFractionDigits(2);
  nf.setMaximumIntegerDigits(max);
 String formatter2 = (String)nf.format(dtdouble);
}
catch(Exception e) {
e.printStackTrace();
}

ご存知の方がいらっしゃいましたら、是非ご教授お願い致します。

現在、Javaサーブレットでブラウザにデータの表示をする際に通貨記号を表示させる為に、NumberFormatクラスのgetCurrencyInstanceを使用して、表示させようとしているのですが、String型で負の数を表示する時に例えば「-$192.42」と表示したい所を、サーブレットを動かしてブラウザで結果を表示させたら「($192.42)」と括弧が付いて表示されるので、どのようにしたらブラウザで「-$192.42」と表示されるのでしょうか?

ちなみに作成したコードは以下のとおりです。

try {
  double dtdouble = Double.par...続きを読む

Aベストアンサー

「ご存知」ではないんですが、多分、ロケールにアメリカを指定してるから、そう
なるのでしょう。

日本で使うプログラムだと思って良いんですよね?
であれば、ロケールに Locale.JAPAN を使いましょう。

by a-kuma@Javaは勉強中

参考URL:http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/util/Locale.html

QJavaサーブレットでツリー表示させたい。

Javaサーブレットでツリー表示させたいと思い、検索したら下記のページに当たったのですが、こういったSwingやAWTというものは、アプレットやアプリケーション(?)では使っているのは見るのですが、サーブレットで使っているのは見たことがありません。

サーブレットでは、Swingなどは使えないのでしょうか?

また、サーブレットで下記のページのようにツリー表示させたい場合は、どのような手法があるのでしょうか?

Aベストアンサー

HTMLとJavaScriptで同じようなものを作り込むか
http://www.google.co.jp/search?hl=ja&c2coff=1&q=JavaScript+%E3%83%84%E3%83%AA%E3%83%BC&lr=lang_ja
http://www.google.co.jp/search?hl=ja&q=JavaScript+tree&lr=lang_ja

あとはリッチオブジェクトを使う方法ね。
Appletを埋め込むか
FLASHを使うとかね。


人気Q&Aランキング

おすすめ情報