本帖最后由 wangkai88 于 2012-06-29 15:07:35 编辑

解决方案 »

  1.   

    String a="file://"+Environment.getExternalStorageDirectory().getPath()+"/DCIM/Camera/";     注意大小写~~~
      

  2.   

    DCIM 这个是大写吗?? 我用eclipse 的资源管理器看了下是小写的文件夹,
    String a = "file://"
    + Environment.getExternalStorageDirectory().getPath()
    + "/DCIM/Camera/";
     Uri uri = Uri.parse(a) ;
    调试了写一样读不出图片
      

  3.   


    File file = new File("/mnt/sdcard/CameraTest/1024_768.jpg");
    // if (file.exists()) {
    if(file.delete()){
    Log.e("del", "删除文件成功");
    loadImageList();
    }else{
    System.out.println("你要的文件没找到哦");
    }


    // } else {
    // System.out.println("你要的文件没找到哦");
    // }
    请问android delete()为什么无法删除文件file.exists() 这个还返回没找到文件我在SD里面找了的才删除这个文件
      

  4.   

    如果是文件夹file.delete()会删除其目录下所有文件    但是文件夹仍然存在~    如果不是文件夹就直接删除的!
      

  5.   

    File file = new File("/mnt/sdcard/CameraTest/1024_768.jpg");
    改为File file = new File("/sdcard/CameraTest/1024_768.jpg"); 这样就行了 不需要/mnt
      

  6.   

    我想要它找出如何获取图像只能从一个特定的文件夹,并不是所有的图像。这里是我使用的代码
    // 获取图片列表
    private ArrayList<Map<String, String>> GetImageList() { ArrayList<Map<String, String>> imageList = new ArrayList<Map<String, String>>();
    HashMap<String, String> imageMap;
    // String a = "file://"
    // + Environment.getExternalStorageDirectory().getPath()
    // + "/DCIM/Camera/";
    String b= "/mnt/sdcard/";
     File baseFile = new File(b+"dcim/Camera/");//  Uri uri = Uri.fromFile(baseFile) ;
    //  Uri uri = Uri.parse(b) ;
    // 读取SD卡中所有图片
    Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
    String[] projection = { MediaStore.Images.Media._ID,
    MediaStore.Images.Media.DISPLAY_NAME,
    MediaStore.Images.Media.DATA, MediaStore.Images.Media.SIZE };
    String selection = MediaStore.Images.Media.MIME_TYPE + "=?";
    String[] selectionArg = { "image/jpeg" };
    Cursor mCursor = this.managedQuery(uri, projection, selection,
    selectionArg, MediaStore.Images.Media.DATE_MODIFIED + " desc");
    imageList.clear();
    if (mCursor != null) {
    mCursor.moveToFirst();
    while (mCursor.getPosition() != mCursor.getCount()) {
    imageMap = new HashMap<String, String>();
    imageMap.put(imageID, mCursor.getString(mCursor
    .getColumnIndex(MediaStore.Images.Media._ID)));
    imageMap.put(imageName, mCursor.getString(mCursor
    .getColumnIndex(MediaStore.Images.Media.DISPLAY_NAME)));
    imageMap.put(
    imageInfo,
    " "
    + (mCursor.getLong(mCursor
    .getColumnIndex(MediaStore.Images.Media.SIZE)) / 1024)
    + "KB");
    imageList.add(imageMap);
    fileNames.add(mCursor.getString(mCursor
    .getColumnIndex(MediaStore.Images.Media.DATA)));
    mCursor.moveToNext();
    }
    mCursor.close();
    }
    return imageList;
    }// 读取SD卡中所有图片
    Uri uri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;这个方式获取所有图片没问题,但是我改成指定的SD卡文件夹路径却不行String a="file://"+Environment.getExternalStorageDirectory().getPath()+"/dcim/Camera/";
    //  File baseFile = new File(a+"/dcim/Camera/15.jpg");
      
    //  Uri uri = Uri.fromFile(baseFile) ;
    Uri uri = Uri.parse(a) ;
      

  7.   

    例如有两个目录sdcard/Music/Music-1 和   /sdcard/Music/Music-2 怎么构造从Music-1目录获得文件的uri?
    我知道可以用MediaStore.Audio.Media.EXTERNAL_CONTENT_UR来获得所有外部存储的content,但是怎么才能在特定的目录下获取文件呢?
      

  8.   

    files = new File(Environment.getExternalStorageDirectory().getPath()
    + "/Download").listFiles();
    pathsrcs = new ArrayList<String>();
    // map = new HashMap<String, Bitmap>();
    // Bitmap bitmap = BitmapFactory.decodeFile("11");
    // map.put("11", bitmap);
    for (File file : files) {
    String path = file.getAbsolutePath();
    if (validate(path)) {
    pathsrcs.add(path);
    } }
    String[] pathsrcsArray = new String[pathsrcs.size()];
    for (int i = 0; i < pathsrcs.size(); i++) {
    pathsrcsArray[i] = pathsrcs.get(i);
      

  9.   

    files = new File(Environment.getExternalStorageDirectory().getPath()
    + "/Download").listFiles();
    pathsrcs = new ArrayList<String>();
    // map = new HashMap<String, Bitmap>();
    // Bitmap bitmap = BitmapFactory.decodeFile("11");
    // map.put("11", bitmap);
    for (File file : files) {
    String path = file.getAbsolutePath();
    if (validate(path)) {
    pathsrcs.add(path);
    } }
    String[] pathsrcsArray = new String[pathsrcs.size()];
    for (int i = 0; i < pathsrcs.size(); i++) {
    pathsrcsArray[i] = pathsrcs.get(i);private File[] files;
    public static List<String> pathsrcs;