2 ze lin huang ze_lin_huang 于 2014.01.22 22:23 提问

android 文件下载,url中没有带文件名,如何下载

例如:http://tp1.sinaimg.cn/1974320764/180/5645631766/1,url中没有带文件名,如何下载

3个回答

nimengbo
nimengbo   2014.01.23 12:59

那个1 不是文件名吗

sasuke38
sasuke38   2014.01.23 17:44

即使如此也可以直接下载啊 用常规的方法
不然你也可以获取真实地址来下载

public static String getFileNameFromUrl(String url) {
        String file = null;
        disableConnectionReuseIfNecessary();
        HttpURLConnection conn = null;
        URL oUrl = null;
        try {
            oUrl = new URL(url);
            conn = (HttpURLConnection) oUrl.openConnection();
            conn.setRequestMethod("GET");
            conn.setRequestProperty("X-Online-Host", oUrl.getHost());
            // conn.setRequestProperty("Accept", ACCEPT);
            conn.setRequestProperty("Accept-Language", "zh-CN");
            conn.setRequestProperty("Referer", oUrl.toString());
            conn.setRequestProperty("Charset", "UTF-8");
            // conn.setRequestProperty("User-Agent", USERAGENT);
            conn.setRequestProperty("Connection", "Keep-Alive");
            conn.setConnectTimeout(5000);
            conn.setReadTimeout(5000);
            conn.connect();
            int code = conn.getResponseCode();
            if (code == 200) {
                file = conn.getURL().getFile();
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
                conn.disconnect();
            } catch (Exception e2) {
            }
        }
        return file;
    }
tanranran
tanranran   2014.02.17 16:12

随机生成一个名称。比如按照时间,然后后面追加随机字符

Csdn user default icon
上传中...
上传图片
插入图片