#c# #json #winforms #json.net
#c# #json #winforms #json.net
Вопрос:
У меня есть несколько текстовых файлов, содержащих данные Json, я хочу проанализировать все необходимые данные из всех этих файлов. Я создаю приложение C # Windows для выполнения этой задачи. пожалуйста, помогите мне за то же самое, заранее благодарю
Вот пример данных моего текстового файла:
Name: sample testname
Username: sampleXYZ
Time zone: SampleTimezone
Language: EN
Json: {
"id": 600723423551234234234,
"id_str": "600723423551234234234",
"name": "sample testname",
"screen_name": "sampleXYZ",
"location": "sample Location",
"description": "sampleDescritpin",
"url": null,
"entities": { "description": {
"urls": []
}
},
//some unwanted data in between
}
Комментарии:
1. Какова природа нежелательных данных? Является ли это частью JSON, или это что-то еще, что было вставлено в JSON и не соответствует стандарту? Кроме того, есть ли что-нибудь, что идет после JSON в файле?
Ответ №1:
Сначала вам нужно извлечь JSON из вашего файла; для этого вы могли бы сделать что-то вроде этого:
static string ExtractJSON(string path)
{
var file = File.ReadAllText(path);
var brackets = 0;
var json = "";
foreach (var c in file)
{
if (c == '{') // if { encountered, go in a level
brackets ;
else if (c == '}') // if } encountered go out a level
{
brackets--;
if (brackets == 0)
json = c.ToString(); // get the last bracket
}
if (brackets > 0) // ignore everything that isn't within the brackets
json = c.ToString();
}
return json;
}
Затем, когда у вас будут данные json, используйте анализатор, подобный тому, который NewtonSoft, для анализа json