<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    方槍槍的java世界

    不要因為風雨飄落就停止了你的腳步,真正的得失就在你的心中。 做喜歡做的事,不輕言放棄!

    00 一個簡單的Http客戶端_SimpleHttpClient(URL)

    package com.tianhe.frm.http.client;

    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.URL;
    import java.net.URLConnection;

    import org.apache.log4j.Logger;

    import com.tianhe.frm.utils.LogUtil;
    import com.tianhe.frm.utils.StringUtil;

    /**
     *d:
     *
     *cd\
     *
     *java com.tianhe.frm.http.SimpleHttpClientURL http://bizhi.zhuoku.com/2012/04/21/shenlin/Shenlin01.jpg d:/wallpaper/
     * proxycn.xxx.com 8080
     *
     *java com.tianhe.frm.http.SimpleHttpClientURL http://bizhi.zhuoku.com/2012/04/21/shenlin/Shenlin01.jpg d:/wallpaper/
     * proxycn.xxx.com 8080
     */
    public class SimpleHttpClient implements Runnable
    {
        private String proxyHost = "";
       
        private String proxyPort = "80";
       
        private String srcUrl = "http://www.tkk7.com/Images/adminlogo.gif";
       
        private String dstDir = "d:/wallpaper";
       
        public SimpleHttpClient(String proxyHost, String proxyPort, String srcUrl, String dstDir)
        {
            if (StringUtil.isNotEmpty(proxyHost))
            {
                this.proxyHost = proxyHost;
            }
           
            if (StringUtil.isNotEmpty(proxyPort))
            {
                this.proxyPort = proxyPort;
            }
           
            this.srcUrl = srcUrl;
            this.dstDir = dstDir;
        }
       
        public SimpleHttpClient(String srcUrl, String dstDir)
        {
            this.srcUrl = srcUrl;
            this.dstDir = dstDir;
        }
       
        public void run()
        {
            long beginTime = System.currentTimeMillis();
           
            URLConnection conn = null;
            InputStream is = null;
           
            int resSize = 0;
           
            if (StringUtil.isNotEmpty(proxyHost))
            {
                System.setProperty("http.proxySet", "true");
                System.setProperty("http.proxyHost", proxyHost);
                System.setProperty("http.proxyPort", proxyPort);
            }
           
            // ////////////////////////////////////////////////////////////////////////
            try
            {
                URL url = new URL(srcUrl);
                conn = url.openConnection();
                is = conn.getInputStream();
               
                // ////////////////////////////////////////////////////////////////////////
                resSize = processResponse(is);
            }
            catch (IOException e)
            {
                throw new RuntimeException("SimpleHttpClient.run[" + srcUrl + "] failed", e);
            }
           
            long used = System.currentTimeMillis() - beginTime;
            System.out.println(srcUrl + " succeed, used=" + used + ", resSize=" + resSize);
        }
       
        private int processResponse(InputStream is) throws IOException, FileNotFoundException
        {
            int resSize = 0;
            FileOutputStream fos;
           
            // String []df = getDirAndFile(resource);
            // File file = createTargetFile(df[0], df[1]);
            File file = createTargetFile("a/b", "test.gif");
           
            int len = -1;
            byte[] buff = new byte[8192];
            fos = new FileOutputStream(file);
            while ((len = is.read(buff)) != -1)
            {
                fos.write(buff, 0, len);
                resSize = resSize + len;
            }
           
            fos.flush();
            fos.close();
            is.close();
           
            return resSize;
        }
       
        public File createTargetFile(String relativeDir, String resName) throws IOException
        {
            String dir;
           
            if (dstDir.endsWith("/"))
            {
                dir = dstDir + relativeDir;
            }
            else
            {
                dir = dstDir + "/" + relativeDir;
            }
           
            File fileDir = new File(dir);
            if (!fileDir.exists())
            {
                fileDir.mkdirs();
            }
           
            String pathFile = dir + "/" + resName;
            File file = new File(pathFile);
            if (!file.exists())
            {
                file.createNewFile();
            }
           
            return file;
        }
       
        private Logger getLog()
        {
            return LogUtil.getLog(getClass());
        }
       
        public static void usage()
        {
            System.out.println("Usage: java SimpleHttpClient -url http://www.tkk7.com/Images/adminlogo.gif -dir d:/wallpaper");
        }
       
        // private String[] getDirAndFile(String resource)
        // {
        // String[] df = new String[2];
        //       
        // String vsTemp = resource;
        // int index = resource.indexOf("?");
        // if (index > 0)
        // {
        // vsTemp = vsTemp.substring(0, index);
        // int index2 = vsTemp.lastIndexOf(".");
        // vsTemp = vsTemp.substring(index2 + 1);
        // }
        // else
        // {
        // int index2 = vsTemp.lastIndexOf(".");
        // vsTemp = vsTemp.substring(index2 + 1);
        // }
        //       
        // return df;
        // }
       
        public static void main(String[] args)
        {
            try
            {
                String srcUrl = "http://www.tkk7.com/Images/adminlogo.gif";
                String dstDir = "d:/wallpaper";
               
                if (args != null && args.length > 0)
                {
                    for (int i = 0; i < args.length; i++)
                    {
                       
                        if (args[i].startsWith("-url"))
                        {
                            srcUrl = args[i + 1];
                            i++;
                        }
                       
                        if (args[i].startsWith("-dir"))
                        {
                            dstDir = args[i + 1];
                            i++;
                        }
                       
                        if (args[i].equalsIgnoreCase("-help"))
                        {
                            usage();
                            System.exit(0);
                        }
                    }
                }
               
                SimpleHttpClient client = new SimpleHttpClient(srcUrl, dstDir);
                new Thread(client).start();
            }
            catch (Exception e)
            {
                e.printStackTrace();
            }
        }
       
    }

    posted on 2012-07-09 23:03 做強大的自己 閱讀(337) 評論(0)  編輯  收藏 所屬分類: Socket

    主站蜘蛛池模板: 亚洲精品欧洲精品| 免费在线观看理论片| 久久久久久亚洲av成人无码国产| 青青视频免费在线| 亚洲国产日韩在线观频| 日本一区二区三区在线视频观看免费| 国产禁女女网站免费看| 青青青视频免费观看| 久久精品国产亚洲AV不卡| 国产精品免费在线播放| 国产亚洲精品自在久久| 久久aa毛片免费播放嗯啊| 亚洲国产综合专区电影在线| 免费无码成人AV在线播放不卡| 亚洲精品视频在线观看视频| 免费不卡视频一卡二卡| 亚洲色丰满少妇高潮18p| 国产成人免费ā片在线观看 | 亚洲精品福利网泷泽萝拉| 亚洲黄色免费网站| 亚洲三级在线视频| 国产又大又粗又硬又长免费| 免费人成视频在线观看免费| 亚洲级αV无码毛片久久精品| 无码免费一区二区三区免费播放| 亚洲国产精品成人精品小说| 日韩一级视频免费观看| 成全视成人免费观看在线看| 99ri精品国产亚洲| 国产午夜免费福利红片| 国产无遮挡裸体免费视频在线观看| 777亚洲精品乱码久久久久久 | 狠狠色伊人亚洲综合网站色| 亚洲成A人片在线观看中文| 三上悠亚在线观看免费| 亚洲大香伊人蕉在人依线| 免费国产精品视频| 91精品手机国产免费| 羞羞视频免费网站入口| 亚洲人成影院在线| 亚洲AV无码乱码在线观看|