Heim  >  Artikel  >  Java  >  Wie öffne ich eine PDF-Datei aus dem Assets-Ordner in Android?

Wie öffne ich eine PDF-Datei aus dem Assets-Ordner in Android?

Susan Sarandon
Susan SarandonOriginal
2024-10-29 00:54:29467Durchsuche

How to Open a PDF File from the Assets Folder in Android?

Eine PDF-Datei aus dem Assets-Ordner lesen

Problem:
Beim Lesen einer PDF-Datei aus der Anwendung Assets-Ordner wird die Fehlermeldung „Der Dateipfad ist ungültig“ angezeigt, nachdem eine Anwendung zum Öffnen der Datei ausgewählt wurde.

Lösung:

Das Problem liegt in der Dateipfad zur PDF-Datei. Um dies zu beheben, befolgen Sie diese Schritte:

1. Kopieren Sie die PDF-Datei in das Dateiverzeichnis der Anwendung.

<code class="java">private void CopyReadAssets() {
    AssetManager assetManager = getAssets();

    InputStream in = null;
    OutputStream out = null;
    File file = new File(getFilesDir(), "abc.pdf");
    try {
        in = assetManager.open("abc.pdf");
        out = openFileOutput(file.getName(), Context.MODE_WORLD_READABLE);

        copyFile(in, out);
        in.close();
        in = null;
        out.flush();
        out.close();
        out = null;
    } catch (Exception e) {
        Log.e("tag", e.getMessage());
    }
}</code>

Dieser Code kopiert die Datei „abc.pdf“ aus dem Assets-Ordner in das Dateiverzeichnis der Anwendung und stellt so sicher, dass Sie Zugriff auf die Datei haben.

2. Aktualisieren Sie die Absicht, den neuen Dateipfad zu verwenden

<code class="java">Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(
                    Uri.parse("file://" + getFilesDir() + "/abc.pdf"),
                    "application/pdf");</code>

Dieser Code aktualisiert die Absicht so, dass sie auf die kopierte PDF-Datei im Dateiverzeichnis der Anwendung verweist.

3. Berechtigung zum Schreiben in den externen Speicher hinzufügen

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

Fügen Sie diese Berechtigung zur Datei AndroidManifest.xml hinzu, um der Anwendung die Berechtigung zu erteilen, für Dateivorgänge auf den externen Speicher zuzugreifen.

Jetzt wird die Die Anwendung sollte die PDF-Datei erfolgreich lesen und anzeigen, wenn der Benutzer auf die DOCS-Schaltfläche klickt.

Das obige ist der detaillierte Inhalt vonWie öffne ich eine PDF-Datei aus dem Assets-Ordner in Android?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn