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
} |
Partager