文件夹在DDMS中看不到,而文件夹是在Android上创建的

时间:2014-06-12 09:41:15

标签: java android eclipse directory ddms

我不明白为什么我无法看到我在Eclipse的DDMS中创建的文件夹。 在我的活动开始时,我称之为:

 public void createFolderSignature(){

    File signaturePointFolder = new File(Environment.getExternalStorageDirectory()+ File.separator + "tour_"+this.point.getId_tour() + File.separator + "point_"+this.point.getId());            
    Log.i("PATH : " , signaturePointFolder.getPath());
    if (!signaturePointFolder.exists()){
           Log.i("signaturePointFolder","CREATED");
           signaturePointFolder.mkdir();
       }else{
           Log.i("signaturePointFolder","ALREADY CREATED");
       }
}

游览是对象。 所以我根据id和tour创建了一个特殊的文件夹。 就像你看到的,我宠物登录,看看文件夹是否创建良好。 所以这是我的logcat:

06-12 09:31:51.268: I/PATH :(24819): /mnt/sdcard/tour_1/point_1
06-12 09:31:51.268: I/signaturePointFolder(24819): CREATED
06-12 09:31:51.412: D/dalvikvm(24819): GC_CONCURRENT freed 1101K, 10% free  12980K/14343K, paused 18ms+12ms, total 67ms
06-12 09:31:51.716: D/dalvikvm(24819): GC_CONCURRENT freed 1706K, 13% free 13337K/15175K, paused 11ms+15ms, total 66ms

因此,如果看到我的日志" CREATED",我通常会收集该文件夹,但是没有,我在AVD的Eclipse文件资源管理器中看不到任何内容。 每次我到达活动时,我都有相同的日志。 为什么?我的代码有问题吗? 我希望你能帮助我=)

编辑1: 我忘记说我在清单中也接受了WRITE_EXTERNAL_STORAGE和READ_的许可。

2 个答案:

答案 0 :(得分:1)

signaturePointFolder.mkdir()更改为signaturePointFolder.mkdirs() 这是因为你创建了一个层次结构的文件夹。 mkdir()仅在有单个父级时才有效。因此,您还需要mkdirs()来创建剩余的文件夹。

还要确保您在清单中提供写入权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

答案 1 :(得分:1)

您始终获得Log.i("signaturePointFolder","CREATED");,因为文件路径始终不存在 所以,试试这个

public void createFolderSignature(){

    File signaturePointFolder = new File(Environment.getExternalStorageDirectory()+ File.separator + "tour_"+this.point.getId_tour() + File.separator + "point_"+this.point.getId());            
    Log.i("PATH : " , signaturePointFolder.getPath());
    if (!signaturePointFolder.exists()){
           Log.i("signaturePointFolder","CREATED");
           signaturePointFolder.mkdirs();
       }else{
           Log.i("signaturePointFolder","ALREADY CREATED");
       }
}

并且忘记在manifest.xml文件中添加权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>