Ошибка конвертации в double при чтении массива из файла - C#

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

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

Добрый День! Считую двомерный массив double из файла таким образом
Листинг программы
  1. public class Data
  2. {
  3. public static int size;
  4. public static double[,] matrixA;
  5. public Data()
  6. {
  7. var streamReader = new StreamReader("Data.txt");
  8. var sizeString = streamReader.ReadLine();
  9. size = Int32.Parse(sizeString);
  10. matrixA = new double[size, size];
  11. Console.WriteLine("Number " + size);
  12. for (int i = 0; i < size; i++)
  13. {
  14. string line = streamReader.ReadLine();
  15. double[] nums = line.Split(new char[] {' '}).Select(n => Convert.ToDouble(n)).ToArray();
  16. for (int j = 0; j < size; j++)
  17. {
  18. matrixA[i, j] = nums[j];
  19. }
  20. }
  21. }
  22. }
Выдает ошибку здесь Convert.ToDouble(n). В файле записано такое 2 1.0 2.0 3.0 5.0 Если написать числа без точки вот так 2 1 2 3 5 все будет работать. Помогите разобраться пожалуйста.

Решение задачи: «Ошибка конвертации в double при чтении массива из файла»

textual
Листинг программы
  1. Console.Write(string.Format(CultureInfo.InvariantCulture, "{0:F} ", matrixA[i, j]));

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


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

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

9   голосов , оценка 4.333 из 5

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

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

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