我試圖將文件從資源文件夾命名的子文件夾複製,但嘗試使用該文件時遇到了「未找到錯誤」。顯然它似乎沒有複製該文件的權利。文件中的資源文件夾
這裏是我做了什麼,也許有人能發現我的錯誤
方法調用:
copyfile("/lollipop/proxy.sh");
方法:
public void copyfile(String file) {
String of = file;
File f = new File(of);
String basedir = getBaseContext().getFilesDir().getAbsolutePath();
if (!f.exists()) {
try {
InputStream in =getAssets().open(file);
FileOutputStream out =getBaseContext().openFileOutput(of, MODE_PRIVATE);
byte[] buf = new byte[1024];
int len;
while ((len = in.read(buf)) > 0) {
out.write(buf, 0, len);
}
out.close();
in.close();
Runtime.getRuntime().exec("chmod 700 " + basedir + "/" + of);
} catch (IOException e) {
Log.e(TAG, "Error reading I/0 stream", e);
}
}
}
嘗試使用proxy.sh因爲該文件似乎從來沒有複製,但當我刪除「棒棒糖」目錄,它工作正常。什麼似乎不對? TNX
,就可以得到任何更好的方法來複制該文件在正常嗎? – CodeZero
@CodeZero:這取決於你在本地文件系統上想要什麼。如果你想在本地文件系統,你有'資產/'相同的目錄結構,使用'getFilesDir()''而不是openFileOutput()'。如果你只是簡單地拷貝這個文件並且不需要'lollipop /'作爲本地文件系統的一個目錄,那麼調用''''''''''''''來獲取文件名,然後傳遞'getName() ''openFileOutput()'的結果。 – CommonsWare
花了2天時間,沒有你的解決方案。 – CodeZero