Как стереть определённую строку
Я знаю какую мне надо стереть строку. Проблема в том что я не могу её стереть. Как бы я не пытался все равно не работает. Если что я работаю с JSON. Мой код:
public void DeleteSelectLine(float line, float pos, int section)
{
string[] str = File.ReadAllLines(path);
for (int i = 0;i < str.Length; i++)
{
_data = JsonUtility.FromJson<SaveData>(str[i]);
if (_data.line == line & _data.pos == pos & _data.section == section)
{
File.WriteAllLines(path, str);
}
}
}
Попытка с списками:
public void DeleteSelectLine(float line, float pos, int section)
{
List<string> lines = File.ReadAllLines(path).ToList();
for (int i = 0;i < lines.Count; i++)
{
_data = JsonUtility.FromJson<SaveData>(lines[i]);
if (_data.line == line & _data.pos == pos & _data.section == section)
{
File.WriteAllLines(path, lines);
}
}
}
Вот так выглядеть мой JSON файл
{"line":-1.0,"pos":5.0,"speed":1,"section":1}
{"line":0.0,"pos":4.0,"speed":1,"section":1}
{"line":1.0,"pos":3.0,"speed":1,"section":1}
{"line":0.0,"pos":2.0,"speed":1,"section":1}
{"line":-1.0,"pos":1.0,"speed":1,"section":1}