Maison  >  Article  >  Java  >  Comment ouvrir un fichier PDF à partir du dossier Assets sous Android ?

Comment ouvrir un fichier PDF à partir du dossier Assets sous Android ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-29 00:54:29467parcourir

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

Lire un fichier PDF à partir du dossier Assets

Problème :
Lors de la lecture d'un fichier PDF à partir du dossier de l'application dossier d'actifs, un message d'erreur "Le chemin du fichier n'est pas valide" s'affiche après la sélection d'une application pour ouvrir le fichier.

Solution :

Le problème réside dans le chemin du fichier vers le fichier PDF. Pour rectifier cela, suivez ces étapes :

1. Copiez le fichier PDF dans le répertoire des fichiers de l'application

<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>

Ce code copie le fichier "abc.pdf" du dossier des ressources vers le répertoire des fichiers de l'application, garantissant que vous avez accès au fichier.

2. Mettre à jour l'intention d'utiliser le nouveau chemin de fichier

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

Ce code met à jour l'intention pour pointer vers le fichier PDF copié dans le répertoire de fichiers de l'application.

3. Ajouter l'autorisation d'écrire sur le stockage externe

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

Ajoutez cette autorisation au fichier AndroidManifest.xml pour accorder à l'application l'autorisation d'accéder au stockage externe pour les opérations sur les fichiers.

Maintenant, le L'application doit lire et afficher avec succès le fichier PDF lorsque l'utilisateur clique sur le bouton DOCS.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn