URIのファイルをダウンロードする

import java.io.*;
import java.net.URL;
import java.net.HttpURLConnection;
import java.io.ByteArrayOutputStream;

/*
http://aaa.bb.cc/xx/y/zzz/xyz1.jpgから
http://aaa.bb.cc/xx/y/zzz/xyz20.jpgまでを、ダウンロードするプログラム例です。
*/

public class HttpDownload {

	public static void main(String []z){
		for(int n=1; n<=20; n++){
			String uri ="http://aaa.bb.cc/xx/y/zzz/xyz"+n+".jpg";
			int i = uri.lastIndexOf("/")+1;
			String path = uri.substring(i);
			if(save(uri,path) == false)break;
		}
	}

	public static boolean save(String uri, String filePath){
		StringBuffer sb = new StringBuffer();
		try{
			System.out.println(uri + "の取得です。");
			URL url = new URL( uri);
			HttpURLConnection urlconn = (HttpURLConnection)url.openConnection();
			urlconn.setRequestMethod("GET");
			urlconn.setInstanceFollowRedirects(false);
			urlconn.setRequestProperty("Accept-Language", "ja;q=0.7,en;q=0.3");
			urlconn.setConnectTimeout(4000);//4秒
			urlconn.connect();

			ByteArrayOutputStream baos = new ByteArrayOutputStream();
			InputStream is = urlconn.getInputStream();
			for(int c; (c=is.read()) != -1; ){
				baos.write(c);	//byte単位で、ダウンロード
				//System.out.print( c);
			}
 			is.close();
			urlconn.disconnect();

			//保存
			System.out.println(filePath + "で保存します。");
			FileOutputStream fos=new FileOutputStream(filePath);
			fos.write(baos.toByteArray() );
			fos.close();
		}
		catch(Exception err){
			err.printStackTrace();
			return false;
		}
		return true;
	}
}