在Android上创建另一个文件夹

时间:2012-11-07 00:17:24

标签: android directory

现在已经两天了,我一直处理一个我似乎无法解决的普通而简单的问题(而其他人都是这样):

在Android上的SD卡上创建文件夹!!! YES !!!

我在这里发了很多帖子,许多教程似乎都说了同样的话:

  • 使用外部文件夹路径+ / yourFolderName
  • 创建一个字符串
  • 创建一个将路径作为参数传递的新文件
  • 在其上调用mkdir()(或mkdirs())
  • 完成!

您可以检查SD卡是否已安装,可读,可写, 当然不要忘记在你的Manifest.xml中输入WRITE_EXTERNAL_STORAGE的权限,但要小心,它必须设置为清单的直接子项而不是应用程序!!!

这对我来说似乎没什么用。

folder_creation代码在onCreate()里面,我正在尝试调用MediaScannerConnection来测试文件是否存在但是它在OnScanCompleteListener上返回null - 但我不确定我是否以正确的方式使用它。

应用程序运行正常(启动默认摄像头活动然后返回主要活动),但不创建文件夹! (到现在为止我只想创建一个里面没有任何内容的文件夹)

可能是与我的包名中包含“example”一词的包名相关的问题? (我在某处与某些相关的东西......)

可能有什么不对?请给我一个暗示,建议,一些......

我正在使用Eclipse使用minSdkVersion = 8在Mac 1.7.5上构建,并在具有2.3.5(sdkVersion = 10)的HTC Wildfire S上进行测试。在非root设备上使用ES File Manager 1.6.1.6进行检查

这是代码的主要部分让我疯狂......

我很高兴知道我能做些什么...... 提前谢谢!

myPath = Environment.getExternalStorageDirectory().getAbsolutePath() + File.separator
                + "myFolder";

        File newDirectory = new File(myPath);
        Log.v("judy says", newDirectory.toString());
        newDirectory.mkdir(); // this doesn't work because "no directory" is displayed in the logCat window
        if (!newDirectory.exists()) {
            newDirectory.mkdir(); 
            Log.v("no, no, no", "no directory");
        }
MediaScannerConnection.scanFile(this,
            new String[] { newDirectory.toString() }, null,
            new MediaScannerConnection.OnScanCompletedListener() {
                public void onScanCompleted(String path, Uri uri) {
                    Log.i("ExternalStorage", "Scanned " + path + ":");
                    Log.i("ExternalStorage", "-> uri=" + uri);
                }
            });

2 个答案:

答案 0 :(得分:0)

如果要创建目录“/ mnt / sdcard / somedir / newdir”

,这是有效的
  File temp = new File (Environment.getExternalStorageDirectory (),
                "somedir" + File.separator + "newdir");
        if (!temp.exists ())
            temp.mkdirs ();

答案 1 :(得分:0)

好吧,我解决了:简单地使用“使用权限”而不是“权限”,问题是我很难在manifest.xml中编写它,而不是使用图形界面,这样我就可以使用内置的列表以选择权限...

如果我无聊,真的很抱歉...... 我希望这对某人有用。