Maison > Java > javaDidacticiel > Comment puis-je obtenir le chemin réel d'un fichier texte sélectionné dans l'explorateur de fichiers d'Android ?

Comment puis-je obtenir le chemin réel d'un fichier texte sélectionné dans l'explorateur de fichiers d'Android ?

Susan Sarandon
Libérer: 2024-12-30 19:19:14
original
882 Les gens l'ont consulté

How Can I Get the Real Path of a Text File Selected from Android's File Explorer?

Obtenir le chemin réel d'un fichier texte à partir de l'explorateur de fichiers sous Android

Sous Android, lors de la sélection d'un fichier dans l'explorateur de fichiers à l'aide de l'intention. ACTION_OPEN_DOCUMENT, vous pourriez rencontrer des difficultés pour obtenir le chemin réel du fichier. En effet, l'Uri renvoyé par l'explorateur de fichiers peut ne pas pointer directement vers un chemin de système de fichiers.

Pour comprendre ce problème, il est crucial de savoir que ACTION_OPEN_DOCUMENT ouvre un document, pas nécessairement un fichier. Le document peut être un fichier, mais il peut également s'agir d'une entrée de base de données, d'un flux d'octets ou d'un autre type d'objet de données.

Par conséquent, essayer d'obtenir le « chemin réel » d'un fichier à partir d'un le document Uri n’est pas toujours possible ou conseillé. Voici quelques approches alternatives :

  1. Utilisez ContentResolver : Au lieu d'essayer d'extraire le chemin du fichier, utilisez ContentResolver et openInputStream() pour lire le contenu du document et l'écrire dans un fichier que vous contrôlez. Cela garantit que vous disposez d'une copie locale des données avec lesquelles vous pouvez travailler.
  2. Utilisez une bibliothèque de sélection de fichiers : Si vous êtes spécifiquement intéressé par la sélection de fichiers, intégrez une bibliothèque de sélection de fichiers dans votre application. Ces bibliothèques offrent une expérience de sélection de fichiers plus contrôlée et peuvent simplifier le processus d'obtention du chemin d'accès du fichier. Cependant, gardez à l'esprit que l'accès au système de fichiers est restreint dans les versions plus récentes d'Android, en particulier pour le stockage externe.
  3. Vérifiez le schéma du document : Si vous utilisez ACTION_GET_CONTENT, vérifiez le schéma de l'Uri renvoyé . S'il s'agit de « fichier », vous pouvez utiliser la méthode getPath() pour récupérer le chemin du système de fichiers. Cependant, si le schéma est autre, vous ne devez pas compter sur l'Uri pour fournir un chemin d'accès à un fichier.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal