Bonjour,

Je voudrais ajouter un élément à un fichier JSON. J'y arrive mais j'ai un problème de relecture que je ne comprends pas.
Voici le code pour ajouter au fichier JSON
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
 
    let fichier = fs.readFileSync(path.resolve(".") +'/src/public/Dicos/' + ledico + '.dico');
    var liste = JSON.parse(fichier);
.
.
.
    var leMot = '{"mot":"' + mot + 
              '", "informations":{"creation": "' + dater() + 
                              '", "expression": "' + mot + 
                              '", "definition": "' + cherche(tableau, "definition") +
                              '", "infos": "' + cherche(tableau, "infos") +
                              '", "origine": "' + cherche(tableau, "origine") +
                              '", "ethymologie": "' + cherche(tableau, "ethymologie") +
                              '", "image": "' + cherche(tableau, "image") +
                              '","lien": "' + cherche(tableau, "lien")+
                              '", "note": ' + parseInt(cherche(tableau, "note")) +
                              ', "favoris": ' + favo +
                              ', "synonymes": [' + syArray +
                              '], "source": "' + cherche(tableau, "source") +
                              '", "corrgigeLe": "' + dater() + '"}}';
    n = liste.listeMot.push(JSON.parse(leMot));
    var dico2 = path.resolve(".") +'/src/public/Dicos/' + ledico + '_corrige.dico'
    fs.writeFile(dico2, JSON.stringify(liste, null, 4), (err) => {  
        if (err) throw err;
        console.log('Données sauvées!');
    });
Je viens d'ajouter mini dico, voici l'extrait du fichier json avec l'avant dernier élément et le dernier
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
 
"corrgigeLe": "2020-05-15T13:01:26.2479918+02:00"
            }
        },
        {
            "mot": "Tirant d'eau",
            "informations": {
                "creation": "2020-05-15T13:01:26.2479918+02:00",
                "expression": "Tirant d'eau",
                "definition": "Différence de hauteur entre la ligne de flottaison et le point le plus bas du bateau. Ne pas confondre avec \"mouillage\" qui s'applique à la voie d'eau. Mentionné \"TE\" sur les guides. Synonyme : enfoncement.",
                "infos": "",
                "origine": "",
                "ethymologie": "",
                "image": "",
                "lien": "",
                "note": 0,
                "favoris": false,
                "synonymes": [],
                "source": "http://www.touedelavilaine.fr/a-decouvrir/lexique-fluvial-batelier",
                "corrgigeLe": "2020-05-15T13:01:26.2479918+02:00"
            }
        },
        {
            "mot": "Mini Dico",
            "informations": {
                "creation": "05/05/20 13:45:43",
                "expression": "Mini Dico",
                "definition": "Développeur",
                "infos": "Version Web",
                "origine": "Nom de programme",
                "ethymologie": "Petit Dictionnaire",
                "image": "",
                "lien": "http://computerherve:3000/dico",
                "note": 4,
                "favoris": true,
                "synonymes": [],
                "source": "Hervé",
                "corrgigeLe": "05/05/20 13:45:43"
            }
        }
Mon programme lit bien le nom mais met une erreur pour informations comme quoi c'est inconnu

Si quelqu'un peu m'aiguiller ça serai super.
En espérant avoir fournit suffisamment d'informations

Nota : creation et corrgigele ne sont pas utilisés. Même en les changeant ça ne change rien

La correction fonctionne nickel
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
 
            liste.listeMot[n].mot = mot;
            liste.listeMot[n].informations.creation = cherche(tableau, "creation");
            liste.listeMot[n].informations.expression = mot;
            liste.listeMot[n].informations.definition = cherche(tableau, "definition");
            liste.listeMot[n].informations.infos = cherche(tableau, "infos");
            liste.listeMot[n].informations.source = cherche(tableau, "source");
            liste.listeMot[n].informations.origine = cherche(tableau, "origine");
            liste.listeMot[n].informations.ethymologie = cherche(tableau, "ethymologie");
            liste.listeMot[n].informations.lien = cherche(tableau, "lien");
            liste.listeMot[n].informations.note = parseInt(cherche(tableau, "note"));
            liste.listeMot[n].informations.favoris = false;
                if (cherche(tableau, "favoris") == "true") {
                    liste.listeMot[n].informations.favoris = true;
                }
            liste.listeMot[n].informations.synonymes = syArray;
            liste.listeMot[n].informations.image = cherche(tableau, "image");
            liste.listeMot[n].informations.corrgigeLe = dater();