web-dev-qa-db-fra.com

Flutter: Comment lire les données d'une simple feuille de calcul?

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 "";
    }
  }
6
Tobi

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.

11
Tobi