Bonjour,

voilà j'ai une fois de plus un petit soucis concernant un remplacement de string dans un fichier. Je m'explique j'ai créé une partie de code qui me permet d'ouvrir un fichier en l'occurence un fichier html ou css et de remplacer le code par les données que j'ai saisie. Tout fonctionne a une exception prêt je peux le faire dans un fichier uniquement.

Voici mon code :
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
42
43
44
45
46
47
48
        var infile = urlHtml;
                    var outfile = urlHtml;
 
            fs.open(infile, 'r', function (err, fd) {
                changeFile(fd);
            });
 
            var out = ' ';
 
            function changeFile(fd) {
 
                var buf = new Buffer(1024);
                buf.fill(0);
 
                try {
 
                    fs.read(fd, buf, 0, 1024, null, function (err, bytesRead, buffer) {
                        if (bytesRead === 0) {
                            writeFile(out);
                            return;
                        }
                        var str = buffer.toString('utf8', 0, bytesRead);
 
                        for (var i in req.body.tpl.title) {
                            str = str.replace('${' + req.body.tpl.title[i].id + '}', req.body.tpl.title[i].value);
                        }
                        for (var i in req.body.tpl.content) {
                            str = str.replace('${' + req.body.tpl.content[i].id + '}', req.body.tpl.content[i].value);
                        }
                        for (var i in req.body.tpl.image) {
                            str = str.replace('${' + req.body.tpl.image[i].id + '}', '../../../' + req.body.tpl.image[i].path);
                        }
 
                        out += str;
                        changeFile(fd);
                    });
 
                } catch (err) {
                    console.error(err);
                }
 
            }
 
            function writeFile(str) {
                fs.writeFile(outfile, str, function (err, written, buffer) {
                    fs.rename(outfile, infile);
                });
            }
Mon fichier JSON :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
{
    "title": [{
        "id": "titre"
        , "name": "titre"
 
  }]
    , "image": [{
        "id": "url"
        , "name": "image"
        , "file": "css"
  }],
}
J'aimerai pouvoir analyser ce fichier et lorsqu'il tombe sur l'image il ouvre le css puis une fois sur le titre il ouvre mon html

J'ai essayé ceci mais ça n'a pas l'air de fonctionner :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
    for( var i in req.body.tpl.length){
 
                    if(req.ody.tpl.image[i].file =='css')
                    {
                    var infile = urlCss;
                    var outfile = urlHtml;
                    } 
                     var infile = urlHtml;
                    var outfile = urlHtml;
merci pour vos réponses