@634

ダウンローダー開発

Advertisement

ダウンロード

職場でセキュリティ向上という名目の元、ブラウザ上での右クリック→「対象をファイルに保存」という動作が出来なくなった。なんという不便さ。
これによってPDFをダウンロードしたいときは、いったんブラウザ上で開いてからメニュー動作で「ファイル」→「保存」としなくてはならなくなった。めんどくさい。
最初は面倒ながらも上記の方法でダウンロードをしていたが、SWEBOKガイドをダウンロードしようとした時に限界が来た。
…重くてブラウザ固まる。
観念してURLからダウンロードできるようにプログラムを書いた。

ソースコード

Download.java
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.net.URL;

public class Download {
    public static void main(String[] args) throws Exception{
        BufferedInputStream bufferedInputStream = null;
        BufferedOutputStream bufferedOutputStream = null;
        
        try{
            URL url = new URL("http://www.swebok.org/ironman/pdf/SWEBOK_Guide_2004.pdf");

            InputStream inputStream = url.openStream();
            bufferedInputStream = new BufferedInputStream(inputStream);

            FileOutputStream fileOutputStream = new FileOutputStream(new File("c:\\test.pdf"));
            bufferedOutputStream = new BufferedOutputStream(fileOutputStream);

            int i;
            while((i = bufferedInputStream.read()) != -1){
                bufferedOutputStream.write(i);
            }
        }finally{
            bufferedInputStream.close();
            bufferedOutputStream.close();
        }
    }
}
驚くほど簡単に出来た。GUI作成や、追加機能を付加したら面白そう。InputStreamは読み出すバイト位置の指定が出来るから、リジューム機能も実装できる。

Advertisement

ショートカット

634
このカテゴリのトップページに戻る
634labs
   UIコレクションギャラリー

サイト検索

Google

Web サイト内

Y!ログール