Conversion d'un fichier texte en un fichier csv
Résolu
mikis69
Messages postés
174
Statut
Membre
-
mikis69 Messages postés 174 Statut Membre -
mikis69 Messages postés 174 Statut Membre -
Bonsoir à tout le monde,
J'ai juste une petite question à poser car dans le cadre d'un projet j'ai besoin de :
1. télécharger un fichier texte (via mon programme java) via une URL
Ce fichier texte à cette structure (mais en réalité, il fait 190 000 lignes) :
On remarque que le fichier texte est pas top niveau structure. J'aimerai donc le convertir en csv pour que mon programme java puisse le lire facilement.
=> La phase de téléchargement de ce fichier ne me pose aucun problème..
2. Convertir le fichier texte en un fichier csv sans le lire
Existe-t-il un moyen de convertir (pas juste faire une copier/coller et remplacer l'extension du fichier) ce fichier texte en fichier csv sans le lire ? Une librairie, une API ?
Par exemple comme Excel le fait : on dit à quelle ligne on veut commencer, le séparateur et il le convertir en un csv.

Merci pour votre réponse,
Mikis
J'ai juste une petite question à poser car dans le cadre d'un projet j'ai besoin de :
1. télécharger un fichier texte (via mon programme java) via une URL
Ce fichier texte à cette structure (mais en réalité, il fait 190 000 lignes) :
File: 02packages.details.txt
URL: https://www.cpan.org/modules/02packages.details.txt
Description: Package names found in directory $CPAN/authors/id/
Columns: package name, version, path
Intended-For: Automated fetch routines, namespace documentation.
Written-By: PAUSE version 1.005
Line-Count: 190929
Last-Updated: Wed, 29 Mar 2017 18:41:02 GMT
A_Third_Package undef C/CL/CLEMBURG/Test-Unit-0.13.tar.gz
AAA::Demo undef J/JW/JWACH/Apache-FastForward-1.1.tar.gz
AAA::eBay undef J/JW/JWACH/Apache-FastForward-1.1.tar.gz
AAAA::Crypt::DH 0.04 B/BI/BINGOS/AAAA-Crypt-DH-0.04.tar.gz
AAAA::Mail::SpamAssassin 0.002 S/SC/SCHWIGON/AAAA-Mail-SpamAssassin-0.002.tar.gz
AAAAAAAAA 1.01 M/MS/MSCHWERN/AAAAAAAAA-1.01.tar.gz
AAC::Pvoice 0.91 J/JO/JOUKE/AAC-Pvoice-0.91.tar.gz
On remarque que le fichier texte est pas top niveau structure. J'aimerai donc le convertir en csv pour que mon programme java puisse le lire facilement.
=> La phase de téléchargement de ce fichier ne me pose aucun problème..
2. Convertir le fichier texte en un fichier csv sans le lire
Existe-t-il un moyen de convertir (pas juste faire une copier/coller et remplacer l'extension du fichier) ce fichier texte en fichier csv sans le lire ? Une librairie, une API ?
Par exemple comme Excel le fait : on dit à quelle ligne on veut commencer, le séparateur et il le convertir en un csv.

Merci pour votre réponse,
Mikis
A voir également:
- Txt en csv
- Convertir csv en ofx - Forum Excel
- Convertir fichier txt en m3u - Forum Windows
- Qui est l auteur du fichier txt ✓ - Forum Windows
- Excel to txt - Télécharger - Suite bureautique
- Trouver erreur de syntaxe fichier txt ✓ - Forum PHP
1 réponse
Bonjour,
Voici un exemple pour transformer ton fichier texte en CSV.
Remarque : tu peux faire cette transformation directement depuis l'URL sans passer par le fichier texte intermédiaire.
Voici un exemple pour transformer ton fichier texte en CSV.
public static void main(String[] args) throws FileNotFoundException { try (Scanner sc = new Scanner(new File("C:/test.txt")); PrintWriter pw = new PrintWriter("C:/test.csv")) { while (!sc.nextLine().trim().isEmpty()); while (sc.hasNextLine()) pw.println(sc.nextLine().trim().replaceAll("\\s+", ";")); } }
Remarque : tu peux faire cette transformation directement depuis l'URL sans passer par le fichier texte intermédiaire.
Scanner sc = new Scanner(new URL("http://test.fr").openStream());
Par contre, j'ai juste un petit problème lorsque je passe directement depuis l'URL
J'ai un fichier csv avec
Je ne m'y connais pas tellement donc je ne sais pas dire d'où cela provient, as-tu une idée ?
Encore merci !
Tu arrives à le lire correctement ?
Edit : Avec ton code là ca marche, je vais voir c'est quoi la différence..
Edit 2 : j'avais mis cet URL "https://www.cpan.org/modules/02packages.details.txt.gz" du coup je comprend mieux !
Merci beaucoup :)
Tu arrives à y accéder en direct depuis ton navigateur ?
Merci :)