Bonjour,
j'ai besoin d'aide s'il vous plait , le fichier json est à droite et je doit formé des clé de traduction comme celui qui est situé à gauche mais je ne dois pas prendre les texte mais seulement les clé (ex: TOTO.TITI.TATA)
Nom : Capture.JPG
Affichages : 302
Taille : 153,7 Ko
pour cela j'ai fait un automate mais j'ai du mal mon code est comme un brouillon
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
 
string[] javascriptFiles = Directory.GetFiles(@"C:\...\allfiles", "*.json", SearchOption.AllDirectories);
            Stack<string> stack = new Stack<string>();
            string temp;
 
            // * Pour chaque ligne lue
            foreach (string ligne in javascriptFiles)
            {
                if (ligne.Contains("{"))
                {//début de clé ou morceau de clé
                    value = true;
                    foreach (Match match in regEX.Matches(ligne))
                    {
 
                        // * Si la ligne contient une chaîne de type : "([A-Z0-9]+):" exemple "BUTTON":
                        temp = regEX.Matches(ligne);
                        stack.Push(temp);
                    }
                }
                else
                {//fin de clé
                    value = false;
                    stack.Pop();
                    obtained_key = stack.Pop();
                }
                // * On push le texte sur la stack (sans les guillemets) : stack.push(group)
                    // * si la ligne contient '{', on est sur un morceau de clé
 
                if (ligne.Contains("}"))
                {
                    //temp = 
                    stack.Pop();
 
                }
                    // * si la ligne ne contient pas de '{', on est sur une fin de clé => clé complète
 
                string[] mot = stack.ToArray();
                stack.Pop();
                string key = stack.Join('.', mot);
 
 
                //dépiler
 
            }