Je suis nouveau dans le flottement et j'ai une question à laquelle il ne devrait pas être difficile de répondre pour un pro.
J'ai une feuille de calcul simple avec 5 colonnes et 10 lignes. Maintenant, j'ai deux variables, représentant l'index des colonnes et des lignes.
Je veux simplement lire la valeur correspondante dans la feuille de calcul, en fonction des numéros de colonne et de ligne souhaités.
Est-ce possible avec un flottement? Flutter peut-il lire une feuille de calcul (.csv par exemple) et en extraire les informations?
J'attends avec impatience une réponse, merci!
EDIT: c'est le code que j'ai jusqu'à présent, à l'origine de https://flutter.io/cookbook/persistence/reading-writing-files/ . Il imprime
I/flutter (18817): Instance de 'Future'
mais je ne sais pas comment accéder aux données.
Future<String> readTable() async {
try {
final file = File("assets/res/table.txt");
// Read the file
String contents = await file.readAsString();
print(contents);
return contents;
} catch (e) {
// If we encounter an error, return 0
return "";
}
}
Merci pour vos réponses. Je l'ai fait fonctionner en utilisant async
et await
comme on peut le voir ci-dessous. Il est également important de déclarer le fichier d'actif dans votre pubspec.yaml
Comme
flutter:
assets:
- assets/res/Book1.csv
Déclarez ensuite les deux fonctions et appelez simplement loadCSV()
lorsque vous souhaitez charger les données.
Future<String> loadAsset(String path) async {
return await rootBundle.loadString(path);
}
void loadCSV() {
loadAsset('assets/res/Book1.csv').then((dynamic output) {
csvRaw = output;
});
}
J'espère que cela aide toute personne ayant le même problème.