Tôi đang cố phân tích cú pháp các tệp JSON và chèn vào trình phân tích cú pháp SQL DB.My làm việc hoàn toàn miễn là các tệp nhỏ (nhỏ hơn 5 MB).Đọc tệp JSON lớn thành biến trong C# .net
Tôi nhận được "Hết bộ nhớ ngoại lệ" khi cố đọc các tệp lớn (> 5MB).
if (System.IO.Directory.Exists(jsonFilePath))
{
string[] files = System.IO.Directory.GetFiles(jsonFilePath);
foreach (string s in files)
{
var jsonString = File.ReadAllText(s);
fileName = System.IO.Path.GetFileName(s);
ParseJSON(jsonString, fileName);
}
}
Tôi đã thử phương pháp JSONReader, nhưng không may mắn khi đưa toàn bộ JSON vào chuỗi hoặc biến.Vui lòng khuyên.
gì 'lớn' ? 5.1meg? 5555555555 megabyte? –
* Tôi đã thử cách tiếp cận JSONReader, nhưng không may mắn khi nhận toàn bộ JSON thành chuỗi hoặc biến. * Nếu bằng "JSONReader", bạn có nghĩa là ['JsonTextReader'] (http: //www.newtonsoft. com/json/help/html/T_Newtonsoft_Json_JsonTextReader.htm) từ Json.NET, bạn có thể chia sẻ những gì bạn đã thử nhưng không hoạt động? – dbc
foreach (chuỗi trong tập tin) {fileName = System.IO.Path.GetFileName (s); sử dụng (WebClient client = new WebClient()) {using (Strea mReader sr = new StreamReader (client.OpenRead (jsonFilePath + fileName)))) {using (JsonReader reader = new JsonTextReader (sr)) {var jsonString = reader.Value.ToString(); ParseJSON (jsonString, fileName) } } } – user1046415