Конвертировать string в array

Рейтинг: 0Ответов: 2Опубликовано: 17.01.2023

Как конвертировать Массив в формат объекта, например JSON

Через апишник я получаю массив данных ,но не знаю, как с ним взаимодействовать, [{"a": "bb", "c": "dd", "e": "ff"}], я пытался прописывать UserGame responseJson2 = JsonConvert.DeserializeObject(s2), но пробуя сделать responseJson[0] ничего не получается. Error: Не удается применить индексирование через [] к выражению типа "object".

 WebRequest reqGET2 = WebRequest.Create(@$"{MyApi}");
                    Stream resp2 = reqGET2.GetResponse().GetResponseStream();
                    StreamReader sr2 = new StreamReader(resp2);
                    Console.WriteLine(sr2);
                    string s2 = sr2.ReadToEnd();
                    Console.WriteLine(s2);

Ответы

▲ 1

Необходимо создать класс для десериализации:

public class DataClass
{
    [JsonPropertyName("a")]
    public string Property1 { get; set; }

    [JsonPropertyName("c")]
    public string Property2 { get; set; }

    [JsonPropertyName("e")]
    public string Property3 { get; set; }
}

Десериализацию можно выполнить таким образом:

var str = @"[{""a"": ""bb"", ""c"": ""dd"", ""e"": ""ff""}]";

var objects = JsonSerializer.Deserialize<List<DataClass>>(str);

Из JSON файла на выходе получится список объектов класса DataClass, к которым, при необходимости, можно будет обратиться по индексу элемента. В вашем случае DataClass - это UserGame

▲ -6

Convert string to array in C#

string str = "Hello world";
char[] charArray = str.ToCharArray();