獲取sdcard目錄
public static String getSDPath() { File sdDir = null; boolean sdCardExist = Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED);// 判斷sd卡是否存在 if (sdCardExist) { sdDir = Environment.getExternalStorageDirectory();// 獲取跟目錄 } return sdDir.toString(); }
創建目錄,不限目錄層級
public static String mkdirs(String path) { String sdcard = getSDPath(); if (path.indexOf(getSDPath()) == -1) { path = sdcard + (path.indexOf("/") == 0 ? "" : "/") + path; } File destDir = new File(path); if (!destDir.exists()) { path = makedir(path); if (path == null) { return null; } } return path; } private static String makedir(String path) { String sdPath = getSDPath(); String[] dirs = path.replace(sdPath, "").split("/"); StringBuffer filePath = new StringBuffer(sdPath); for (String dir : dirs) { if (!"".equals(dir) && !dir.equals(sdPath)) { filePath.append("/").append(dir); File destDir = new File(filePath.toString()); if (!destDir.exists()) { boolean b = destDir.mkdirs(); if (!b) { return null; } } } } return filePath.toString(); }
所需權限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /><!-- 在sdcard中創建/刪除文件的權限 --><uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS" />
顯示本地圖片
ImageView view5 = findView(R.id.imageview2);view5.setImageBitmap(ImageUtils.getLoacalBitmap("/storage/sdcard1/myimage/20160807.jpg"));public static Bitmap getLoacalBitmap(String url) { try { FileInputStream fis = new FileInputStream(url); return BitmapFactory.decodeStream(fis); } catch (FileNotFoundException e) { //這里應顯示默認圖片,如圖片無法顯示等;從應用資源圖片中選取 return null; } }
以上這篇Android獲取SDcard目錄及創建文件夾的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。
新聞熱點
疑難解答