相关疑难解决方法(0)

如何删除整个文件夹和内容?

我希望我的应用程序的用户能够删除DCIM文件夹(位于SD卡上并包含子文件夹).

这有可能,如果是这样的话怎么样?

directory file-io android delete-directory

169
推荐指数
13
解决办法
19万
查看次数

分享Google+的意图无法访问图片

我打算分享图像的意图.这适用于大多数提供商,但适用于Google+.Google+会在没有图片的情况下打开帖子活动并显示祝词"您只能发布存储在设备上的照片".同时.

    File f = storeImage(image); // f = /data/data/com.myapp/files/1333070776978.jpg
    Uri uri = Uri.fromFile(f);

    Intent share = new Intent(Intent.ACTION_SEND);
    share.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); 
    share.setType("image/jpeg");
    share.putExtra(Intent.EXTRA_STREAM, uri);
    share.putExtra(Intent.EXTRA_TITLE,"Share that title");
    share.putExtra(Intent.EXTRA_SUBJECT,"Share that subject");
    share.putExtra(Intent.EXTRA_TEXT,"Check that out...");
    share.putExtra("sms_body", "sms body");
    startActivity(Intent.createChooser(share, "Share Image"));
Run Code Online (Sandbox Code Playgroud)

我保存图像

    Context.openFileOutput(fileName, Context.MODE_WORLD_READABLE);
Run Code Online (Sandbox Code Playgroud)

我的理解是,通过设置FLAG_GRANT_READ_URI_PERMISSION,我授予Google+特定访问权限.

当我将图像存储到MediaStore时它可以工作,但我实际上不想弄乱用户图像库.

    ContentValues values = new ContentValues(2);
    values.put(MediaStore.Images.Media.MIME_TYPE, "image/jpeg");
    values.put(MediaStore.Images.Media.DATA, f.getAbsolutePath());
    Uri uri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, values);
Run Code Online (Sandbox Code Playgroud)

任何建议表示赞赏

西蒙

android image android-intent google-plus android-sharing

14
推荐指数
1
解决办法
2660
查看次数

Android:将文件从一个目录复制到另一个目录

我正在使用以下代码并使用apache commons库将一个文件(临时音频文件)从源文件夹复制到目标文件夹TT_1A.

码:

button1_save.setOnClickListener(new OnClickListener() 
    {
        public void onClick(View v) 
        {
            String sourcePath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/TT/tt_temp.3gp";
            File source = new File(sourcePath);

            String descPath = Environment.getExternalStorageDirectory().getAbsolutePath() + "/TT/tt_1A.3gp";
            File desc = new File(descPath);
            try 
            {
                FileUtils.copyDirectory(source, desc);
            } 
            catch (IOException e) 
            {
                e.printStackTrace();
            }
        }
    }); 
Run Code Online (Sandbox Code Playgroud)

Apache Commons:

http://commons.apache.org/proper/commons-io/download_io.cgi

题:

我已经使用了这个FileUtils函数来复制临时文件并粘贴到desc文件夹作为TT_1A.然而,logcat报告错误,具体如下:

10-17 00:41:04.260: E/AndroidRuntime(27450): FATAL EXCEPTION: main
10-17 00:41:04.260: E/AndroidRuntime(27450): java.lang.NoClassDefFoundError: org.apache.commons.io.FileUtils
10-17 00:41:04.260: E/AndroidRuntime(27450):    at com.abc.abc.TT_details_canton$14.onClick(TT_details_canton.java:575)
10-17 00:41:04.260: E/AndroidRuntime(27450):    at android.view.View.performClick(View.java:4223)
10-17 00:41:04.260: E/AndroidRuntime(27450):    at android.view.View$PerformClick.run(View.java:17275)
10-17 …
Run Code Online (Sandbox Code Playgroud)

directory android copy file

7
推荐指数
2
解决办法
3万
查看次数

在Java中编写文件时是否需要在finally中调用close()?

有一些例子,人们close()finally写入文件时会调用它们,例如:

OutputStream out = null;
try {
    out = new FileOutputStream(file);
    out.write(data);
    out.close();
}
catch (IOException e) {
    Log.e("Exception", "File write failed: " + e.toString());
} finally {
    try {
        if (out != null) {
            out.close();
        }
    } catch (IOException e) {
        Log.e("Exception", "File write failed: " + e.toString());
    }
}
Run Code Online (Sandbox Code Playgroud)

但也有很多 更多的例子,包括Android官方文档,他们不这样做:

try {
    OutputStream out = new FileOutputStream(file);
    out.write(data);
    out.close();
}
catch (IOException e) {
    Log.e("Exception", "File write …
Run Code Online (Sandbox Code Playgroud)

java android

3
推荐指数
1
解决办法
6694
查看次数

从Android中的应用程序目录文件夹中删除文件?

我在应用程序目录中创建了文件夹。

File dir = new File(getActivity().getFilesDir().getParent() + File.separator + "Image directory");
Run Code Online (Sandbox Code Playgroud)

在那我再次创建了指定内容的文件夹

File dir1 = new File(getActivity().getFilesDir().getParent() + File.separator + "Image directory" + File.separator+ "Image 1");
Run Code Online (Sandbox Code Playgroud)

在里面我要存储图像。图像被存储和访问。

我想删除存储在 dir1 位置的所有图像。

我试过

if(dir1.isDirectory())
{
    for (int j = 0; j < dir1.length; j++)
    {
        File file = new File(dir1, dir1[j]);
        //file.canExecute();
        file.delete(); 
    }
}
Run Code Online (Sandbox Code Playgroud)

file.delete(); 每次都返回false。

我在清单中添加了权限

 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
 <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
Run Code Online (Sandbox Code Playgroud)

android

-1
推荐指数
1
解决办法
4629
查看次数