電子書籍の厳選無料作品が豊富!

javaのプログラムで、

load("00001.jpg");

というようにjpgファイルを読み込んでいます。
これを00001.jpg~000009.jpgまで連続に読み込みをしたいのですが、どのようにすればよいでしょうか。

変な書き方になりますが、

for(int i=0;i<9;i++){
load("0000i.jpg");
}

のようにしたいです。これだとiが文字として認識されてしまいますが・・・

A 回答 (4件)

#2です


ちなみに画像ファイルの読み込みだと

BufferedImage[] readImage ;
try {
for(int i = 0 ; i < 9 ; i++ ){
readImage[i] = ImageIO.read(new File("0000"+(i+1)+".jpg"));
}
} catch (Exception e) {
e.printStackTrace();
readImage = null;
}

やっつけでつくったけどこんな感じでいいんじゃない?
    • good
    • 0
この回答へのお礼

プログラムまで作っていただいてありがとうございます。
参考にして、勉強していきたいと思います。

お礼日時:2007/07/06 17:46

他の方が書いている様に "0000" + i でもいいんですが、目先の問題の解決方法だけではなくDecimalFormatなどのフォーマッタを用いて先を見据えた作り方をした方が良いでしょう。

    • good
    • 0
この回答へのお礼

御意見ありがとうございます。
これから勉強していく身なので、方向性を示していただくととても助かります。

お礼日時:2007/07/06 17:48

その記述だとiが文字列として認識されてしまいますので、


load("0000" + i + ".jpg") ;
にしなければいけませんね。
ちなみにfor文の書き方ですが、00001~00009まで読みたいのであれば
for(int i = 1 ; i < 10 ; i++) {
load("0000" + i + ".jpg") ;
}
のようにしてください。
    • good
    • 0

load("0000" + Integer.toString(i) + ".jpg");



だと思うけど?
loadが何だか知らないけどね。
    • good
    • 0
この回答へのお礼

文字列とiを分ければいいんですね!
ありがとうございます。

お礼日時:2007/07/06 17:44

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