CSV
Traiter des fichiers PDF personnalisés.
Introduction
Netuno génère des fichiers CSV via la ressource CSV qui permet une abstraction low-code d'Apache Commons CSV pour les différents langages de programmation supportés par Netuno.
L'application fournie avec Netuno nommée demo (application de démonstration) contient de nombreux exemples des implémentations possibles de code dans plusieurs langages, y compris la démonstration de l'exportation vers CSV via le service csv qui se trouve dans :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
netuno/apps/demo/server/services/samples/javascript/csv.js
netuno/apps/demo/server/services/samples/typescript/csv.ts
netuno/apps/demo/server/services/samples/python/csv.py
netuno/apps/demo/server/services/samples/ruby/csv.rb
netuno/apps/demo/server/services/samples/kotlin/csv.kts
netuno/apps/demo/server/services/samples/groovy/csv.groovy
Créer un fichier CSV
Pour créer un fichier CSV, il faut d'abord initialiser un CSVPrinter d'Apache Commons CSV.
Pour cela, nous devons passer le nom du dossier et le nom du fichier, ainsi que le format du CSV.
Dans l'exemple, nous allons générer le fichier dans le storage de l'application :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
const imprimanteCsv = _csv.printer(
_storage.filesystem("server", "donnees.csv"),
_csv.format("EXCEL")
)
const imprimanteCsv = _csv.printer(
_storage.filesystem("server", "donnees.csv"),
_csv.format("EXCEL")
)
imprimante_csv = _csv.printer(
_storage.filesystem("server", "donnees.csv"),
_csv.format("EXCEL")
)
imprimante_csv = _csv.printer(
_storage.filesystem("server", "donnees.csv"),
_csv.format("EXCEL")
)
val imprimanteCsv = _csv.printer(
_storage.filesystem("server", "donnees.csv"),
_csv.format("EXCEL")
)
def imprimanteCsv = _csv.printer(
_storage.filesystem("server", "donnees.csv"),
_csv.format("EXCEL")
)
Les formats supportés sont décrits ici.
Écriture
Pour écrire des lignes dans le fichier CSV :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
imprimanteCsv.printRecord("id", "nomUtilisateur", "prénom", "nom", "anniversaire")
imprimanteCsv.printRecord(1, "jean73", "Jean", "Dupont", 123)
imprimanteCsv.printRecord("id", "nomUtilisateur", "prénom", "nom", "anniversaire")
imprimanteCsv.printRecord(1, "jean73", "Jean", "Dupont", 123)
imprimanteCsv.printRecord("id", "nomUtilisateur", "prénom", "nom", "anniversaire")
imprimanteCsv.printRecord(1, "jean73", "Jean", "Dupont", 123)
imprimanteCsv.printRecord("id", "nomUtilisateur", "prénom", "nom", "anniversaire")
imprimanteCsv.printRecord(1, "jean73", "Jean", "Dupont", 123)
imprimanteCsv.printRecord("id", "nomUtilisateur", "prénom", "nom", "anniversaire")
imprimanteCsv.printRecord(1, "jean73", "Jean", "Dupont", 123)
imprimanteCsv.printRecord("id", "nomUtilisateur", "prénom", "nom", "anniversaire")
imprimanteCsv.printRecord(1, "jean73", "Jean", "Dupont", 123)
Fermeture
À la fin, il est nécessaire de fermer le CSVPrinter :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
imprimanteCsv.close()
imprimanteCsv.close()
imprimanteCsv.close()
imprimanteCsv.close()
imprimanteCsv.close()
imprimanteCsv.close()
Lire un fichier CSV
Pour lire un fichier CSV, il faut d'abord initialiser un CSVParser d'Apache Commons CSV.
Pour cela, nous devons passer le nom du dossier et le nom du fichier.
Dans l'exemple, nous allons lire le fichier dans le storage de l'application :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
const analyseurCsv = _csv.parser(_storage.filesystem("server", "donnees.csv"))
const analyseurCsv = _csv.parser(_storage.filesystem("server", "donnees.csv"))
analyseurCsv = _csv.parser(_storage.filesystem("server", "donnees.csv"))
analyseurCsv = _csv.parser(_storage.filesystem("server", "donnees.csv"))
val analyseurCsv = _csv.parser(_storage.filesystem("server", "donnees.csv"))
final analyseurCsv = _csv.parser(_storage.filesystem("server", "donnees.csv"))
Lignes
Maintenant, il est possible d'itérer sur les CSVRecord d'Apache Commons CSV, qui représentent chaque ligne du fichier CSV :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
for (const enregistrement of analyseurCsv) {
const colonneUn = enregistrement.get(0)
const colonneDeux = enregistrement.get(1)
}
for (const enregistrement of analyseurCsv) {
const colonneUn = enregistrement.get(0)
const colonneDeux = enregistrement.get(1)
}
for enregistrement in analyseur_csv:
colonneUn = enregistrement.get(0)
colonneDeux = enregistrement.get(1)
analyseur_csv.each do |enregistrement|
colonneUn = enregistrement.get(0)
colonneDeux = enregistrement.get(1)
end
for (enregistrement in analyseurCsv) {
val colonneUn = enregistrement.get(0)
val colonneDeux = enregistrement.get(1)
}
for (enregistrement in analyseurCsv) {
def colonneUn = enregistrement.get(0)
def colonneDeux = enregistrement.get(1)
}
Ou récupérer chaque ligne avec la méthode getRecord d'Apache Commons CSV.
Dans cet exemple, le premier get récupère la première ligne. Le second get récupère le premier champ/valeur de cette ligne :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
analyseurCsv.getRecords().get(0).get(0)
analyseurCsv.getRecords().get(0).get(0)
analyseurCsv.getRecords().get(0).get(0)
analyseurCsv.getRecords().get(0).get(0)
analyseurCsv.getRecords().get(0).get(0)
analyseurCsv.getRecords().get(0).get(0)
Fermeture
À la fin, il est nécessaire de fermer le CSVParser :
- JavaScript
- TypeScript
- Python
- Ruby
- Kotlin
- Groovy
analyseurCsv.close()
analyseurCsv.close()
analyseurCsv.close()
analyseurCsv.close()
analyseurCsv.close()
analyseurCsv.close()