C# pode usar a biblioteca para ler arquivos JSON e ler o valor de uma determinada palavra-chave Newtonsoft.Json
. Suponha que nosso arquivo JSON tenha esta aparência:
{
"name": "Alice",
"age": 25,
"is_student": true,
"hobbies": [
"reading",
"travelling"
]
}
Para ler o valor de uma das palavras-chave, primeiro você precisa definir uma classe de entidade correspondente para armazenar dados JSON. Por exemplo, as seguintes classes poderiam ser definidas:
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
public bool IsStudent { get; set; }
public List<string> Hobbies { get; set; }
}
O arquivo JSON pode então ser lido e desserializado em Person
um objeto do tipo usando o seguinte código:
using Newtonsoft.Json;
using System.IO;
// 读取 JSON 文件
string jsonFilePath = "example.json";
using (StreamReader sr = new StreamReader(jsonFilePath))
{
string json = sr.ReadToEnd();
// 解析 JSON 字符串
var person = JsonConvert.DeserializeObject<Person>(json);
// 获取某一个关键字的值
Console.WriteLine(person.Name);
}
Neste código, primeiro abrimos StreamReader
o arquivo JSON e o lemos em uma string. Em seguida, utilizamos JsonConvert.DeserializeObject<Person>()
a função para desserializar a string para obter um Person
objeto do tipo person
, por meio do person
qual podem ser acessadas diversas informações nos dados JSON, por exemplo, name
o valor da palavra-chave pode ser obtido person.Name
.
Deve-se observar que o código do exemplo acima é apenas o método mais básico de leitura de um arquivo JSON e obtenção do valor de uma determinada palavra-chave. Se quiser ler arquivos JSON com estruturas mais complexas, você precisa entender melhor e estar familiarizado com Newtonsoft.Json
várias operações e funções da biblioteca. Além disso, se o nome de uma palavra-chave nos dados JSON for igual a uma palavra-chave reservada em C#, você poderá adicionar o atributo ao atributo na classe de entidade [JsonProperty("keyName")]
para especificar a palavra-chave JSON correspondente do atributo.