Не преобразовывается string в double и не вносится в массив - C#

Узнай цену своей работы

Формулировка задачи:

Суть такова, при попытке преобразовать строковую переменную в double и внести её в массив программа выдает ошибку "Additional information: Входная строка имела неверный формат." в string находятся переменные который должны подходить к типу double(или я совсем тупой) собственно проблема возникает в данной части программы:
Листинг программы
  1. double[] myArray = new double[5];
  2. myArray[0] = Convert.ToDouble(procent);
  3. myArray[1] = Convert.ToDouble(procent1);
  4. myArray[2] = Convert.ToDouble(procent2);
  5. myArray[3] = Convert.ToDouble(procent3);
  6. myArray[4] = Convert.ToDouble(procent4);
так же пробовал сделать так
Листинг программы
  1. double[] myArray = new double[5];
  2. myArray[0] = double.Parse(procent);
  3. myArray[1] = double.Parse(procent1);
  4. myArray[2] = double.Parse(procent2);
  5. myArray[3] = double.Parse(procent3);
  6. myArray[4] = double.Parse(procent4);
в переменной

procent

находятся значения типа -1.20, 6.50 и т.д. по сути нечего выходящего за пределы типа... полностью программа(там всё очень плохо но оно работает, так что я не трогаю):
Листинг программы
  1. using System;
  2. using System.Collections;
  3. using System.Windows.Forms;
  4. using System.Net;
  5. using System.IO;
  6. using System.Text.RegularExpressions;
  7. namespace WindowsFormsApplication3
  8. {
  9. public partial class Form1 : Form
  10. {
  11. public Form1()
  12. {
  13. InitializeComponent();
  14. }
  15. public void button1_Click(object sender, EventArgs e)
  16. {
  17. WebClient client = new WebClient();
  18. string adress = "http://economictimes.indiatimes.com/indian-oil-corporation-ltd/stocks/companyid-11924.cms";
  19. string newLine = client.DownloadString(adress);
  20. string result;
  21. string procent;
  22. result = Regex.Match(newLine, @"<div class=""value"" id=""nseTradeprice"">(\-?\d+(\.\d{0,})?)</div>").Groups[1].Value;
  23. procent = Regex.Match(newLine, @"<span id=""nseNetchange"">(\-?\d+(\.\d{0,})?)</span>").Groups[1].Value;
  24. textBox1.Text = result;
  25. textBox2.Text = "Indian Oil Corporation Ltd.";
  26. textBox3.Text = procent;
  27. string adress1 = "http://economictimes.indiatimes.com/reliance-industries-ltd/stocks/companyid-13215.cms";
  28. string newLine1 = client.DownloadString(adress1);
  29. string result1;
  30. string procent1;
  31. result1 = Regex.Match(newLine1, @"<div class=""value"" id=""nseTradeprice"">(\-?\d+(\.\d{0,})?)</div>").Groups[1].Value;
  32. procent1 = Regex.Match(newLine1, @"<span id=""nseNetchange"">(\-?\d+(\.\d{0,})?)</span>").Groups[1].Value;
  33. textBox4.Text = "Reliance Industries Ltd.";
  34. textBox8.Text = result1;
  35. textBox12.Text = procent1;
  36. string adress2 = "http://economictimes.indiatimes.com/bharat-petroleum-corporation-ltd/stocks/companyid-11941.cms";
  37. string newLine2 = client.DownloadString(adress2);
  38. string result2;
  39. string procent2;
  40. result2 = Regex.Match(newLine2, @"<div class=""value"" id=""nseTradeprice"">(\-?\d+(\.\d{0,})?)</div>").Groups[1].Value;
  41. procent2 = Regex.Match(newLine2, @"<span id=""nseNetchange"">(\-?\d+(\.\d{0,})?)</span>").Groups[1].Value;
  42. textBox5.Text = "Bharat Petroleum Corporation Ltd.";
  43. textBox9.Text = result2;
  44. textBox13.Text = procent2;
  45. string adress3 = "http://economictimes.indiatimes.com/hindustan-petroleum-corporation-ltd/stocks/companyid-12078.cms";
  46. string newLine3 = client.DownloadString(adress3);
  47. string result3;
  48. string procent3;
  49. result3 = Regex.Match(newLine3, @"<div class=""value"" id=""nseTradeprice"">(\-?\d+(\.\d{0,})?)</div>").Groups[1].Value;
  50. procent3 = Regex.Match(newLine3, @"<span id=""nseNetchange"">(\-?\d+(\.\d{0,})?)</span>").Groups[1].Value;
  51. textBox6.Text = "Hindustan Petroleum Corporation Ltd.";
  52. textBox10.Text = result3;
  53. textBox14.Text = procent3;
  54. string adress4 = "http://economictimes.indiatimes.com/tata-motors-ltd/stocks/companyid-12934.cms";
  55. string newLine4 = client.DownloadString(adress4);
  56. string result4;
  57. string procent4;
  58. result4 = Regex.Match(newLine4, @"<div class=""value"" id=""nseTradeprice"">(\-?\d+(\.\d{0,})?)</div>").Groups[1].Value;
  59. procent4 = Regex.Match(newLine4, @"<span id=""nseNetchange"">(\-?\d+(\.\d{0,})?)</span>").Groups[1].Value;
  60. textBox7.Text = "Tata Motors Ltd.";
  61. textBox11.Text = result4;
  62. textBox15.Text = procent4;
  63. double[] myArray = new double[5];
  64. myArray[0] = Convert.ToDouble(procent);
  65. myArray[1] = Convert.ToDouble(procent1);
  66. myArray[2] = Convert.ToDouble(procent2);
  67. myArray[3] = Convert.ToDouble(procent3);
  68. myArray[4] = Convert.ToDouble(procent4);
  69. }
  70. }
  71. }
Суть собственно говоря в том что бы значения procent вносились в массив а затем из него находило минимальное и максимальное значение, если есть какой то другой способ это сделать буду так же очень благодарен. P.S. Я слегка совсем тупой в C# по сути меньше недели P.S.S. да понимаю что есть куча тем с преобразованием данных переменных, но я так и не смог понять как изменить кода...

Решение задачи: «Не преобразовывается string в double и не вносится в массив»

textual
Листинг программы
  1. myArray[0] = Convert.ToDouble(procent.Replace(".", ","));

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.667 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы