Gestion de fichiers .csv
Fermé
TheCorsican
Messages postés
1
Date d'inscription
mercredi 21 novembre 2018
Statut
Membre
Dernière intervention
21 novembre 2018
-
21 nov. 2018 à 12:08
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 - 21 nov. 2018 à 19:30
KX Messages postés 16668 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 17 mars 2023 - 21 nov. 2018 à 19:30
A voir également:
- Gestion de fichiers .csv
- Wetransfer gratuit fichiers lourd - Guide
- WeTransfer - Télécharger - Téléchargement & Transfert
- Téléchargez cette archive (dossier compressé). en extraire tous les fichiers dans un dossier local. quel fichier contient l’expression trouverpix ? ✓ - Forum Windows
- Fichiers temporaires windows 10 - Guide
- Logiciel gestion photo - Guide
1 réponse
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
21 nov. 2018 à 15:54
21 nov. 2018 à 15:54
Bonjour,
Est-ce que tu aurais des exemples de fichiers CSV Avant/Après et les schémas de tables correspondant pour que l'on se représente au mieux ce que tu souhaites faire ?
Est-ce que tu aurais des exemples de fichiers CSV Avant/Après et les schémas de tables correspondant pour que l'on se représente au mieux ce que tu souhaites faire ?
Modifié le 21 nov. 2018 à 23:54
Exemple :
public static void main(String[] args) throws IOException { File src1 = new File("C:/test/src1.csv"); File src2 = new File("C:/test/src2.csv"); File dest = new File("C:/test/dest.csv"); Csv.write(dest, // Csv.column(src1, 0), // 1A Csv.column(src2, 1), // 2B Csv.column(src2, 0), // 2A Csv.column(src1, 1), // 1B Csv.column(src1, 2), // 1C Csv.column(src2, 2));// 2C }import java.io.*; import java.util.*; public final class Csv { private Csv() {} public static final class Column { private final File srcFile; private final int srcColumn; private Column(File srcFile, int srcColumn) { this.srcFile = srcFile.getAbsoluteFile(); this.srcColumn = srcColumn; } } public static Column column(File srcFile, int srcColumn) { return new Column(srcFile, srcColumn); } public static void write(File dstFile, Column... columns) throws IOException { Map<File, Scanner> scanners = new HashMap<>(); try (PrintWriter pw = new PrintWriter(dstFile)) { for (Column column : columns) { if (!scanners.containsKey(column.srcFile)) { scanners.put(column.srcFile, new Scanner(column.srcFile)); } } while (true) { Map<File, String[]> tabs = new HashMap<>(); boolean hasNext = false; for (Map.Entry<File, Scanner> entry : scanners.entrySet()) { Scanner scanner = entry.getValue(); if (scanner.hasNext()) { hasNext = true; tabs.put(entry.getKey(), scanner.next().split(";")); } } if (!hasNext) break; for (int i = 0; i < columns.length; i++) { if (i != 0) pw.print(";"); Column column = columns[i]; String[] tab = tabs.get(column.srcFile); if (tab != null && tab.length > column.srcColumn) { pw.print(tab[column.srcColumn]); } } pw.println(); } } finally { for (Scanner scanner : scanners.values()) { scanner.close(); } } } }