我正在构建一个 WPF 程序,它正在为模拟程序编辑保存文件,以便更容易调整某些参数。该(txt)文件的结构如下所示
{Verdieping 1}
A bunch of data
'Max'
15
20
10
]);
More data
{Verdieping 2}
A bunch of data
'Max'
25
10
40
20
]);
More data
{Verdieping 3}
etc.
因为我需要的列表的名称总是'Max'我不能使用Replace("Old_Value", "New_Value");
所以我需要找到标题{Verdieping 1}然后寻找'Max'并写下值直到它到达“]);”所以我结束用这样的东西:
Verdieping_1[0] = 15
Verdieping_1[1] = 20
Verdieping_1[0] = 10
Verdieping_2[0] = 25
Verdieping_2[1] = 10
Verdieping_2[2] = 40
Verdieping_2[3] = 20
然后,当我更改这些值时,我需要将它们写回到正确位置的文件中。现在我正在使用这段代码来读取并最终写入新文件:
var Model = System.IO.File.ReadAllText(@"C:\Base_Model.txt");
//format code here...
System.IO.File.WriteAllText(@"C:\New_Model.txt", Model);
有人可以就如何最好地解决这个问题给我一些提示或帮助吗?
编辑 这是我要编辑的文件的实际文件结构:
{Atom: Verdieping 2}
int015(0, 64, [
1
2
3
]);
int015(1, 64, [`ActivityID`
20
21
33
]);
int015(2, 64, [`vtp`
139830296
189540320
169919424
]);
int015(3, 64, [`%`
100
100
100
]);
int015(4, 64, [`Max`
15
5
20
]);
int015(5, 64, [`Fill (1 = fill, 0 = empty)`
1
1
0
]);
SetStatus(0);
int018;
{Atom: Verdieping 2}
int015(0, 64, [
1
2
3
]);
int015(1, 64, [`ActivityID`
22
23
24
]);
int015(2, 64, [`vtp`
166058172
165557860
155960564
]);
int015(3, 64, [`%`
100
100
100
]);
int015(4, 64, [`Max`
15
20
10
]);
int015(5, 64, [`Fill (1 = fill, 0 = empty)`
0
1
1
]);
SetStatus(0);
int018;
我之前所说的“Max”实际上被称为:int015(4, 64, [Max
正如你所看到的,每个层的名称都是相同的,变量的数量是不同的。
感谢你目前的帮助!