android - 页面显示andriod系统目录下图片
阿神
阿神 2017-04-17 17:44:08
0
2
478

从服务器下载图片到本地路径,然后在前端展示那个图片,路径这块应该怎么处理?求大神支招啊。

阿神
阿神

闭关修行中......

membalas semua(2)
Peter_Zhu

1. Buat folder untuk menyimpan imej
2. Buat fail untuk menyimpan imej
3. Muat turun imej dan tuliskannya ke dalam fail

//一般图片存储在手机SD卡 获取手机的SD卡根目录增加temp的文件夹路径
Environment.getExternalStorageDirectory().getAbsolutePath() + "/temp";

Muat turun imej dan simpan dalam kod utama tempatan

void doSaveImage(){
        String filePath = FileUtil.getEnvironmentPath();
        Log.i("doSaveImage",filePath + "");
        File fileFloder = new File(filePath);
        if(!fileFloder.exists()){
            if(fileFloder.mkdirs()){
                Log.i("doSaveImage","file.mkdirs"  + " true");
            }else{
                Log.i("doSaveImage","file.mkdirs"  + " false");
                Toast.makeText(this,"save error!",Toast.LENGTH_SHORT).show();
            }
        }
        InputStream in = null;
        OutputStream out = null;
        try {
            Log.i("doSaveImage",AppConst.IMG_HEAD_URL + mUrl);
            URL url = new URL(AppConst.IMG_HEAD_URL + mUrl);
            URLConnection con = url.openConnection();
            con.setConnectTimeout(5*1000);
            int contentLength = con.getContentLength();
            in = con.getInputStream();
            byte[] bytes = new byte[1024];
            File file = new File(fileFloder.getPath(), name +".jpg");
            out = new FileOutputStream(file);
            int len;
            while ((len = in.read(bytes)) != -1){
                Log.i("doSaveImage",len + "");
                out.write(bytes,0,len);
            }
        } catch (Exception  e) {
            e.printStackTrace();
        }finally {
            try{
                if(in != null) in.close();
                if(out != null) out.close();
            }catch (IOException e){
                e.printStackTrace();
            }
        }
    }
洪涛

Laluan rentetan = null;
if (getExternalCacheDir() != null) {//Tentukan sama ada storan luaran tersedia, iaitu, kad SD
//Jika ada, gunakan kad SD
laluan = context .getExternalCacheDir().getAbsolutePath() File.separator;
} else {
//Jika tidak terdapat memori telefon sendiri
path= context.getCacheDir().getAbsolutePath() File.separator;
}

Di atas hanya menulis ke direktori akar, anda boleh membuat direktori baharu mengikut keperluan anda

Konteks kaedah getExternalCacheDir boleh digunakan terus dalam Aplikasi, atau getExternalCacheDir boleh dipanggil terus dalam Aplikasi

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan