У меня есть один файл apk в папке активов. Я хочу скопировать файл apk из MODE_PRIVATE, а затем прочитать его. Я написал функции записи и чтения, но не могу прочитать мой файл. У меня есть FileNotFoundException Вот мои функции
private void writeFilePrivate() {
AssetManager assetManager = getAssets();
InputStream in;
FileOutputStream fos;
try {
in = assetManager.open("test.apk");
fos = openFileOutput("tmp.apk", Context.MODE_PRIVATE);
byte[] buffer = new byte[1024];
int read;
while ((read = in.read(buffer)) != -1) {
fos.write(buffer, 0, read);
}
in.close();
fos.flush();
fos.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
private File readFileFromPrivate() {
int ch;
StringBuffer fileContent = new StringBuffer("");
FileInputStream fis;
try {
fis = openFileInput("test.apk");
try {
while ((ch = fis.read()) != -1)
fileContent.append((char) ch);
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
String data = new String(fileContent);
File file = new File(data);
return file;
}
У меня есть эта ошибка в журнале
java.io.FileNotFoundException: /data/data/com.mypackage.music/files/test.apk: open failed: ENOENT (No such file or directory)
Что я делаю не так?