{
"GameLevels": [
{
"ID": 1,
"Name": "Level1",
"Rows": 6,
"Cols": 5,
"TilesLayout": [
0,0,1,1,1,1,1,0,0,
1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,
0,0,1,1,1,1,1,0,0
],
"GameResultSetings": {
"TargetPoint": 150
}
},
{
"ID": 2,
"Name": "Level2",
"Rows": 7,
"Cols": 7,
"TilesLayout": [
0,0,1,1,1,1,1,0,0,
1,1,1,1,1,1,1,1,1,
1,1,1,1,0,1,1,1,1,
1,1,1,1,0,1,1,1,1,
1,1,1,1,0,1,1,1,1,
1,1,1,1,0,1,1,1,1,
1,1,1,1,0,1,1,1,1,
1,1,1,1,1,1,1,1,1,
0,0,1,1,1,1,1,0,0
],
"GameResultSetings": {
"TargetPoint": 150
}
}
]
}
public class GameResultSetings
{
public int TargetPoint { get; set; }
}
public class GameLevel
{
public int ID { get; set; }
public string Name { get; set; }
public int Rows { get; set; }
public int Cols { get; set; }
public List<int> TilesLayout { get; set; }
public GameResultSetings GameResultSetings { get; set; }
}
public class RootObject
{
public List<GameLevel> GameLevels { get; set; }
}
internal static class Serializer
{
internal static void Serialize<T>(this T arg, string fileName)
{
string res = JsonConvert.SerializeObject(arg, Formatting.Indented);
File.WriteAllText(fileName,res);
}
internal static T Deserialize<T>(string fileName)
{
string json = File.ReadAllText(fileName);
T res = JsonConvert.DeserializeObject<T>(json);
return res;
}
}
var yourFileFullPath = ...; // Здесь путь к твоему файлу
var gameLevels = Serializer.Deserialize<RootObject>(yourFileFullPath).GameLevels;
List<GameLevel>
), используй его с умом. Удачи.