Parse, как метод класса double - C#
Формулировка задачи:
Имеется следующий код.
В режиме выполнения(run-time) возникает System.FormatException, ошибка преобразования, хотя строка, которая дается в качестве параметра содержит только цифры и десятичную точку(по идее должно правильно преобразоваться).
Помогите
string positions = "0,-0.061426,0.9388459 -0.049693,0.200773,0.692165";
string[] posArr = positions.Split(' ');
foreach (string p in posArr)
{
string[] vals = p.Split(',');
string str1, str2, str3;
double var01, var02, var03;
str1 = vals[0];
str2 = vals[1];
str3 = vals[2];
var01 = double.Parse(str1);
var02 = double.Parse(str2); //при пошаговой отладке ошибка возникает в этом месте
var03 = double.Parse(str3);
}Решение задачи: «Parse, как метод класса double»
textual
Листинг программы
CultureInfo culture=new Culture("en-Us"); //устанавливаем новую культуру
IFormatProvider provider=culture; //устанавливаем новый региональный стандарт
string positions = "0,-0.061426,0.9388459 -0.049693,0.200773,0.692165"; //для английских настроек
string[] posArr = positions.Split(' ');
foreach (string p in posArr)
{
string[] vals = p.Split(',');
string str1, str2, str3;
double var01, var02, var03;
str1 = vals[0];
str2 = vals[1];
str3 = vals[2];
var01 = double.Parse(str1, provider);
var02 = double.Parse(str2, provider);
var03 = double.Parse(str3, provider);
}