书面方式到SD卡时,权限被拒绝 [英] Permission denied when writting into sdCard

查看:579
本文介绍了书面方式到SD卡时,权限被拒绝的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试着写一个文件到SD卡,但我正在逐渐在logcat的错误:

  9月1号至24号:03:33.647:W / System.err的(3353):java.io.FileNotFoundException:/mnt/sdcard/fun/itisfun.txt:打开失败: EACCES(权限被拒绝)
    8月1日至24日:24:28.007:W / System.err的(3353):libcore.io.ErrnoException:产生的原因打开失败:EACCES(权限被拒绝)
    九月1日至24日:03:33.756:W / System.err的(3353):在libcore.io.Posix.open(本机方法)
 

在这里,我的code写入到SD卡:

 文件根= NULL;
尝试 {
    //检查SD卡
    根= Environment.getExternalStorageDirectory();
    Log.i(TAG,路..+ root.getAbsolutePath());

    //检查SD卡的权限
    如果(root.canWrite()){
        文件FILEDIR =新的文件(root.getAbsolutePath()+/乐/);
        fileDir.mkdirs();

        档案文件=新的文件(FILEDIR,itisfun.txt);
        的FileWriter FileWriter的=新的FileWriter(文件);
        BufferedWriter将出=新的BufferedWriter(的FileWriter);
        out.write(我米享受......花花公子);
        out.close();
    }
} 抓住(...) {
    ...
}
 

清单:

 <使用-权限的Andr​​oid:名称=android.permission.WRITE_EXTERNAL_STORAG​​E/>
<允许机器人:名称=android.permission.INTERNET对>< /许可>
 

解决方案

有关写入SD卡,你需要给权限在manifest文件

 <使用-权限的Andr​​oid:名称=android.permission.WRITE_EXTERNAL_STORAG​​E/>
 

I'm trying write a file into SDCard, but I am getting error in logcat :

01-24 09:03:33.647: W/System.err(3353): java.io.FileNotFoundException: /mnt/sdcard/fun/itisfun.txt: open failed: EACCES (Permission denied)
    01-24 08:24:28.007: W/System.err(3353): Caused by: libcore.io.ErrnoException: open failed: EACCES (Permission denied)
    01-24 09:03:33.756: W/System.err(3353):at libcore.io.Posix.open(Native Method)

And here my code to write into SDCard :

File root = null;     
try {  
    // check for SDcard   
    root = Environment.getExternalStorageDirectory();                   
    Log.i(TAG,"path.." +root.getAbsolutePath());  

    //check sdcard permission  
    if (root.canWrite()){  
        File fileDir = new File(root.getAbsolutePath()+"/fun/");  
        fileDir.mkdirs();  

        File file = new File(fileDir, "itisfun.txt");  
        FileWriter filewriter = new FileWriter(file);  
        BufferedWriter out = new BufferedWriter(filewriter);  
        out.write("I m enjoying......dude");  
        out.close();
    }
} catch(...) {
    ...
}

Manifest :

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

解决方案

For writing to the Sdcard you need to give the permission in your manifest file

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

这篇关于书面方式到SD卡时,权限被拒绝的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆