Tâche Read File
Résumé
- Nom interne :
ReadFile - Catégorie : File System
- Objectif : Lire le contenu texte d'un fichier (jusqu'à 1 Mo) dans une variable de workflow.
- Type de tâche : Normale
Compatibilité
-
Version AndroMate minimale :
1.1.0 -
Version AndroMate maximale :
1.1.0 -
Android minimum :
Android 13 (API 33) -
Android testé maximum :
Android 16 (API 36) -
Permissions requises :
MANAGE_EXTERNAL_STORAGE
Description détaillée
La tâche Read File lit le contenu texte UTF-8 d'un fichier et le stocke dans la variable value_output.
Pour protéger la mémoire de l'appareil et éviter des variables de workflow gigantesques, la taille du fichier est plafonnée à 1 Mo. Un fichier plus gros est rejeté avec FILE-TASK-003 au lieu d'être chargé. Une variable de workflow est faite pour du texte exploitable (config, petit JSON, résultats), pas pour de gros fichiers.
Toutes les tâches File System sont confinées au bac à sable AndroMate : /sdcard/AndromateFileTask. Un chemin sortant du bac à sable est rejeté avec FILE-TASK-001.
Le contenu est retourné en texte brut, non parsé. Pour manipuler du JSON ensuite, chaîne une tâche JSON Object Operation.
Paramètres d'entrée
| Paramètre | Type | Requis | Valeurs possibles / Règles | Compatibilité Android | Compatibilité AndroMate | Défaut |
|---|---|---|---|---|---|---|
file_path |
String | Oui | Chemin du fichier dans le bac à sable — max 1 Mo | Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | "" |
Paramètres de sortie
| Champ | Type | Condition de déclenchement | Compatibilité Android | Compatibilité AndroMate | Défaut |
|---|---|---|---|---|---|
value_output |
String | En cas de succès — le contenu texte du fichier | Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | <ANDROMATE_NULL_VALUE> |
Exceptions
| Code | Condition de déclenchement |
|---|---|
FILE-TASK-001 |
Le chemin est hors du bac à sable AndroMate |
FILE-TASK-002 |
Échec de l'opération système de fichiers (ex. fichier introuvable) |
FILE-TASK-003 |
Fichier trop volumineux à lire (plus de 1 Mo) |
Diagramme d'exécution
flowchart TD
Start([▶ ReadFile]) --> Jail[📂 Création du bac à sable]
Jail --> Validate{Chemin dans le bac à sable ?}
Validate -->|Non| ThrowJail([❌ FILE-TASK-001])
Validate -->|Oui| Size{Taille <= 1 Mo ?}
Size -->|Non| ThrowBig([❌ FILE-TASK-003])
Size -->|Oui| Read[📖 readText UTF-8]
Read --> Store[💾 Définir value_output]
Store --> Success([✅ StrTaskResult])
style Start fill:#e3f2fd
style Success fill:#c8e6c9
style ThrowJail fill:#ffcdd2
style ThrowBig fill:#ffcdd2
style Read fill:#f3e5f5
style Store fill:#c8e6c9
Fonctionnement :
- Bac à sable : le dossier du bac à sable est créé s'il manque
- Validation : le chemin résolu est vérifié comme étant dans le bac à sable
- Garde-fou taille : si le fichier dépasse 1 Mo, lève
FILE-TASK-003 - Lecture : le fichier est lu en texte UTF-8
- Stockage : le contenu est écrit dans
value_output - Résultat : retourne
StrTaskResult
Exemples de code
Exemple 1 — Lire un fichier de config dans une variable
{
"ReadFile": [
{
"id": "1",
"title": "Lire config",
"file_path": "config.json",
"value_output": "$config"
}
]
}
Exemple 2 — Lire puis parser du JSON
{
"ReadFile": [
{
"id": "1",
"title": "Lire données",
"file_path": "data.json",
"value_output": "$raw_json"
}
]
}
(puis utiliser une tâche JSON Object Operation sur $raw_json)
Détails des paramètres d'entrée
file_path — Fichier à lire
Chemin dans le bac à sable. Le fichier ne doit pas dépasser 1 Mo, sinon la tâche lève FILE-TASK-003. Supporte l'interpolation $variable.
Détails des paramètres de sortie
value_output — Contenu du fichier
Stocke le contenu texte UTF-8 brut du fichier dans la variable de workflow spécifiée. Le contenu n'est pas parsé — utilise une tâche JSON Object Operation pour traiter des données structurées.