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

TypeScript Discussion :

Import CSV provenant d'Excel


Sujet :

TypeScript

  1. #1
    Membre à l'essai
    Import CSV provenant d'Excel
    Bonjour,

    J'ai fait un CSV provenant d'Excel et je souhaite importer mon CSV dans mon application.

    Mon code fonctionne sauf pour les accents où j'ai des ? .

    Pourtant quand je fais mon CSV, je met bien enregistrer sous et dans l'option je choisis pour l'encodage : unicode(UTF-8).

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
     
    uploadListener($event: any): void {
     
        let files = $event.target.files;
     
        if (this.isValidCSVFile(files[0])) {
     
          let input = $event.target;
          let reader = new FileReader();
          reader.readAsText(input.files[0]);
     
     
          reader.onload = () => {
            let csvData = reader.result;
            let csvRecordsArray = (<string>csvData).split(/\r\n|\n/);
     
            console.log(csvRecordsArray[0].split(";")[0]);
     
            if(this.model){
              let headersRow = this.getHeaderArray(csvRecordsArray);
     
              this.records = this.getDataRecordsArrayFromCSVFile(csvRecordsArray, headersRow);
              console.log(this.records);
              const valeur = this.indexService.saveCritereToserver(this.records, this.model, 'csv');
              if(valeur && this.erreurs.length === 0 ){
                this.fileReset();
              }
            } else {
     
            }
          };
     
          reader.onerror = function () {
            console.log('error is occured while reading file!');
          };
     
        } else {
          alert("Please import valid .csv file.");
          this.fileReset();
        }
      }


    Si on pouvait m'expliquer pourquoi ça ne fonctionne pas et comment pallier ce problème, merci d'avance.

    Cordialement

  2. #2
    Membre à l'essai
    Pour ceux qui ont le même souci,

    C'est que l'encodage d'un fichier Excel n'est pas en UTF-8 mais en ISO-8859-1.

    Il suffit juste d'écrire :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    reader.readAsText(input.files[0],'ISO-8859-1');

###raw>template_hook.ano_emploi###