Im используя следующий метод для копирования PDF-файла из папки с данными во внутреннюю память в android. Я намерен открыть его с помощью MUPDF Reader. Поскольку он не поддерживает прямое открытие с что они делают это. Но, похоже, нет ответов на SO или где-либо, чтобы получить внутреннее хранилище в Android. Мне просто нужно открыть скопированный файл «Sample.pdf» из внутреннего хранилища. Пожалуйста, помогите.Получить внутренний путь хранения, чтобы открыть Скопированный PDF, используя MUPDF
private void copyAssets() {
AssetManager assetManager = getAssets();
String[] files = null;
try {
files = assetManager.list("");
} catch (IOException e) {
Log.e("tag", "Failed to get asset file list.", e);
}
if (files != null) for (String filename : files) {
InputStream in = null;
OutputStream out = null;
try {
in = assetManager.open(filename);
File outFile = new File(getExternalFilesDir(null), filename);
out = new FileOutputStream(outFile);
copyFile(in, out);
} catch(IOException e) {
Log.e("tag", "Failed to copy asset file: " + filename, e);
}
finally {
if (in != null) {
try {
in.close();
} catch (IOException e) {
// NOOP
}
}
if (out != null) {
try {
out.close();
} catch (IOException e) {
// NOOP
}
}
}
}
}
private void copyFile(InputStream in, OutputStream out) throws IOException {
byte[] buffer = new byte[1024];
int read;
while((read = in.read(buffer)) != -1){
out.write(buffer, 0, read);
}
}
Я попробовал метод из вашего answer.I получить следующие
12-07 12:33:42.425: E/libmupdf(1858): Opening document...
12-07 12:33:42.427: E/libmupdf(1858): error: cannot open null//Sample.pdf
12-07 12:33:42.428: E/libmupdf(1858): error: cannot load document 'null//Sample.pdf'
12-07 12:33:42.429: E/libmupdf(1858): error: Cannot open document: 'null//Sample.pdf'
12-07 12:33:42.429: E/libmupdf(1858): Failed: Cannot open document: 'null//Sample.pdf'
12-07 12:33:42.433: I/System.out(1858): java.lang.Exception: Failed to open null//Sample.pdf
Вы просто хотите скопировать файл Sample.pdf из папки справки во внутреннее хранилище? а затем захотелось открыть в MUPDF? – dex
@dex Yeah.As mupdf не может открыть из активов напрямую, я полагаю. – techno
@dex copyPath возвращается null – techno