Всем привет.
Написал программу погоды, которая считывает данные по API с сайта https://api.openweathermap.
Данные, отображаются в моей программе c точкой (с дробной частью):

Я хочу, чтоб данные округлялись и выводились целым числом (как, например, byte или int).
Я понимаю, что нужно писать примерно так:
label1.Text = match.Groups[3].Value + " " + ((int)Math.Round(Convert.ToDouble(match.Groups[1].Value))).ToString();
но этот код не работает.
Полный код метода:
void button1_Click(object sender, EventArgs e)
{
string line = "";
using (WebClient wc = new WebClient())
line = wc.DownloadString($"https://api.openweathermap.org/data/2.5/weather?q={textBox1.Text}&units=metric&appid");
Match match = Regex.Match(line, "\"temp\":(.*?),(.*?)\"name\":\"(.*?)\",");
label1.Text = match.Groups[3].Value + " " + `match.Groups[1].Value` + " °C";
}
WebClientустарел, это можно понять, зайдя на офф сайт и прочитав, что его заменой теперь являетсяHttpClient. 2. Вы получаете JSON, который бредово парсить регулярками, ибо для этого есть специальные механизмы, называющиеся "десериализацией", в современном C# есть для этогоSystem.Text.Json. Делайте класс, в нем описывайте всю структуру JSON и десериализуйте в этот класс. 3. Зачем вам тут матиматика, конвертация, и прочее, если вы выводите это все вstring? Пишите значит формат, C# сам вам все округлит, напримерlabel1.Text = $"{4.84:F0}";. – EvgeniyZ Feb 19 '23 at 15:16