当前位置: 代码迷 >> Android >> 獲取其余程序XML檔複製至指定資料夾
  详细解决方案

獲取其余程序XML檔複製至指定資料夾

热度:81   发布时间:2016-05-01 10:11:32.0
獲取其他程序XML檔複製至指定資料夾
我想要複製其他程序底下的shared_prefs/內的檔案,並複製到一個名為bgyy的檔案, 可是總是報錯? 可否有人幫解決
private void copy()
{

try
{   
Process root = Runtime.getRuntime().exec("su");
    File sd = Environment.getExternalStorageDirectory();
String path=sd.getPath()+"/bgyy"; 
File files=new File(path); 
//files.mkdir(); 


          if (sd.canWrite()) {
         files.mkdir(); 
File file = new File("/data/data/otherpackagename/shared_prefs/CCC.xml");
File fos = new File("/sdcard/bgyy/CCC.xml");
FileInputStream inStream = new FileInputStream(file);
FileOutputStream outStream = new FileOutputStream(fos); 
if(!file.exists()){

// 寫入檔案
int readLen = 0;  
        byte[] buf = new byte[1024];  
        while ((readLen = inStream.read(buf)) != -1) {  
         outStream.write(buf, 0, readLen);  
        }  
        //inStream.flush();  
        inStream.close();  
        outStream.close();  

}
          }
      
}catch(Exception e)
{
e.printStackTrace();
}





07-23 08:07:24.583: W/System.err(29841): java.io.FileNotFoundException: /data/data/otherpackagename/shared_prefs/CCC.xml: open failed: EACCES (Permission denied)
07-23 08:07:24.583: W/System.err(29841):  at libcore.io.IoBridge.open(IoBridge.java:416)
07-23 08:07:24.583: W/System.err(29841):  at java.io.FileInputStream.<init>(FileInputStream.java:78)
07-23 08:07:24.583: W/System.err(29841):  at com.XXX.MainActivity.copyDatabase(MainActivity.java:81)
07-23 08:07:24.583: W/System.err(29841):  at com.XXX.MainActivity.access$0(MainActivity.java:65)
07-23 08:07:24.583: W/System.err(29841):  at com.XXX.MainActivity$1.onClick(MainActivity.java:62)
07-23 08:07:24.583: W/System.err(29841):  at android.view.View.performClick(View.java:4084)
  相关解决方案