IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Conversion fichier us-ascii vers utf-8 sans BOM CRLF


Sujet :

Shell et commandes GNU

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Conversion fichier us-ascii vers utf-8 sans BOM CRLF
    Bonjour,

    Je possède un fichier tel que ci-dessous :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    file -i IMPGRATI_20240206_170037.txt
    IMPGRATI_20240206_170037.txt: text/plain; charset=us-ascii
    file IMPGRATI_20240206_170037.txt
    IMPGRATI_20240206_170037.txt: ASCII text
    je souhaite le convertir en UTF-8 sans BOM avec CR LF

    j'arrive bien à le convertir au format CRLF comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    recode utf8../CR-LF IMPGRATI_20240206_170037.txt
    file IMPGRATI_20240206_170037.txt
    IMPGRATI_20240206_170037.txt: ASCII text, with CRLF line terminators
    mais dès lors que je veux le convertir en UTF-8, il repasse en BOM (je n'arrive pas à le convertir directement en utf-8, donc je le converti d'abord en utf-16 puis en utf-8)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    iconv -f us-ascii -t utf-16 IMPGRATI_20240206_170037.txt > IMPGRATI_20240206_170037.txt.utf16
    iconv -f utf-16le -t utf-8 IMPGRATI_20240206_170037.txt.utf16 > IMPGRATI_20240206_170037.txt.utf8
    file -i IMPGRATI_20240206_170037.txt.utf8
    IMPGRATI_20240206_170037.txt.utf8: text/plain; charset=utf-8
    file IMPGRATI_20240206_170037.txt.utf8
    IMPGRATI_20240206_170037.txt.utf8: UTF-8 Unicode (with BOM) text, with CRLF line terminators
    et quand j'essaye de lui "enlever BOM" avec la commande ci-dessous, il repasse en ascii :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    vi -c ":set nobomb" -c ":wq" IMPGRATI_20240206_170037.txt.utf8
    file IMPGRATI_20240206_170037.txt.utf8
    IMPGRATI_20240206_170037.txt.utf8: ASCII text, with CRLF line terminators
    Avez-vous une solution pour que mon fichier soit convertit en UTF-8 sans BOM au format CRLF ?

    En vous remerciant d'avance pour votre aide

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Analyste/ Programmeur
    Inscrit en
    Juillet 2013
    Messages
    4 629
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Analyste/ Programmeur

    Informations forums :
    Inscription : Juillet 2013
    Messages : 4 629
    Points : 10 554
    Points
    10 554
    Par défaut
    En quoi ASCII c'est 1 erreur par rapport à UTF-8 sans BOM ?

    ""L'analyseur du texte"" qui ne voit que des caractères entre 0 et 127 (2^7), il va sûrement prendre le plus petit ensemble, donc ASCII
    Parce que sans le BOM, ""l'analyseur du texte"" doit trouver l'encodage.

  3. #3
    Candidat au Club
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Janvier 2024
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2024
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Toutes mes excuses, c'était une erreur de compréhension de ma part.

    Le format us-ascii est en fait du utf-8.

    Du coup j'ai juste eu à réencoder le fichier pour le changer en CR LF comme ceci, et c'est tout bon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    recode utf8../CR-LF ZSPE_EXTRACT_GRATIF.csv
    file ZSPE_EXTRACT_GRATIF.csv
    ZSPE_EXTRACT_GRATIF.csv: ASCII text, with CRLF line terminators

    Merci pour votre temps.

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/10/2012, 11h23
  2. Réponses: 1
    Dernier message: 26/03/2010, 13h11
  3. Conversion ISO-8859-1 vers UTF-8 dans Eclipse
    Par Jerhom dans le forum Eclipse
    Réponses: 2
    Dernier message: 03/06/2008, 17h35
  4. Réponses: 1
    Dernier message: 05/12/2006, 16h54
  5. conversion iso-8859-1 vers utf-8
    Par gorgonite dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/08/2006, 12h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo