Задать вопрос
  • Как разобрать json на классы и переменные в c#?

    @UniverseElement
    Копируем JSON в буфер обмена.

    Создаём пустой C# файл. В нем не должно быть ничего, кроме указания namespace. Курсор поставим внутрь namespace, куда будет вставлен код созданных классов.

    В меню Viusal Studio выбираем EDIT > Paste Special > Paste JSON as Classes.

    В результате будут созданы необходимые C# классы.
    Ответ написан
    Комментировать
  • Как разобрать json на классы и переменные в c#?

    VoidVolker
    @VoidVolker Куратор тега C#
    Dark side eye. А у нас печеньки! А у вас?
    1. Пишете нужный класс с нужными данными: Как правильно описать класс для библиотеки Newtonsoft.Json C#?
    2. Открываете ман Newtonsoft.json в разделе конвертеров: https://www.newtonsoft.com/json/help/html/CustomJs... и далее в гугле.
    3. Пишете свой конвертер
    4. Радуетесь результату
    Ответ написан
    1 комментарий
  • Как читать данные из файла?

    mindtester
    @mindtester Куратор тега C#
    http://iczin.su/hexagram_48
    что то примерно так (без теста)..

    var lst = File.ReadAllLines("bla..bla..bla");
    foreach (var s in lst) {var toks = (s).Split(':'); ...;};
    при работе с чистым текстом StreamReader в общем то и не нужен (!! важно, при больших объёмах файлов, чтение целиком, может критично расходовать память, в этом случае снова см ответ Василий Банников)
    по большой просьбе автора вопроса ))
    namespace list_and_parse
    {
        internal static class Program
        {
            internal static void Main(string[] args)
            {
                var lst = File.ReadAllLines("FileName.conf");
                foreach (var s in lst)
                {
                    var toks = s.Split(":");
                    string check() => (toks[0] == "Volume", toks[0] == "IsMarkers", toks[0] == "Mouse") switch
                    {
                        (true, _, _) => $"Volume={float.Parse(toks[1])}",
                        (_, true, _) => $"IsMarkers={bool.Parse(toks[1])}",
                        (_, _, true) => $"Mouse={int.Parse(toks[1])}",
                        _ => ".. ups (("
                    };
                    check().print();
                };
            }
            internal static void print(this string s) => Console.WriteLine(s);
        }
    }
    ... чуть ближе к реальному применению ))
    namespace list_and_parse
    {
        internal static class Program
        {
            internal static void Main(string[] args)
            {
                var Volume = 0.0;
                var IsMarkers = false;
                var Mouse = 0;
    
                var lst = File.ReadAllLines("FileName.conf");
                foreach (var s in lst)
                {
                    var toks = s.Split(":");
                    string check() => (toks[0] == "Volume", toks[0] == "IsMarkers", toks[0] == "Mouse") switch
                    {
                        (true, _, _) => $"Volume=>{double.TryParse(toks[1], out Volume)}",
                        (_, true, _) => $"IsMarkers=>{bool.TryParse(toks[1], out IsMarkers)}",
                        (_, _, true) => $"Mouse=>{int.TryParse(toks[1], out Mouse)}",
                        _ => ".. ups (("
                    };
                    check().print();
                };
                "".print();
                $"Volume={Volume}".print();
                $"IsMarkers={IsMarkers}".print();
                $"Mouse={Mouse}".print();
            }
            internal static void print(this string s) => Console.WriteLine(s);
        }
    }
    Ответ написан