这应该可以解决您的问题。基本上,它的工作方式与您的初始代码相同,不同之处
{在于,它仅在读者点击流中的字符时反序列化对象,否则它会跳至下一个对象,直到找到另一个起始对象标记为止。JsonSerializer serializer = new JsonSerializer();MyObject o;using (FileStream s = File.Open("bigfile.json", FileMode.Open))using (StreamReader sr = new StreamReader(s))using (JsonReader reader = new JsonTextReader(sr)){ while (reader.Read()) { // deserialize only when there's "{" character in the stream if (reader.TokenType == JsonToken.StartObject) { o = serializer.Deserialize<MyObject>(reader); } }}


