Próbuję sparsować pliki JSON i wstawić do SQL DB. Mój analizator działał idealnie dobrze, o ile pliki są małe (mniej niż 5 MB).Czytanie dużego pliku JSON na zmienną w C# .net
Podczas próby odczytu dużych plików (> 5 MB) pojawia się wyjątek "Brak pamięci".
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);
}
}
Próbowałem podejście JSONReader, ale nie ma szczęścia, aby uzyskać cały JSON na ciąg lub zmiennej.Please doradzić.
Co to jest«duży» ? 5.1meg? 5555555555 megabajtów? –
* Próbowałem podejście JSONReader, ale nie ma szczęścia, aby uzyskać cały JSON na ciąg lub zmiennej. * Jeśli przez "JSONReader" masz na myśli ['JsonTextReader'] (http: //www.newtonsoft. com/json/help/html/T_Newtonsoft_Json_JsonTextReader.htm) z Json.NET, czy możesz udostępnić to, czego próbowałeś, ale nie działa? – dbc
foreach (ciągi w plikach) {fileName = System.IO.Path.GetFileName (s); przy użyciu (klient WebClient = new WebClient()) {przy użyciu (Strea mReader SR = nowy StreamReader (client.OpenRead (jsonFilePath + nazwach))) {stosując (JsonReader czytnik = nowy JsonTextReader (SR)) {var jsonString = reader.Value.ToString(); ParseJSON (jsonString, nazwy) } } } – user1046415