Особенности парсинга строк в Windows и MacOs X
Добавлено: 13 фев 2010, 12:32
float.Parse("0,5") в Windows выдаст 0.5 а в Маке ошибку, потому что для Мака писать нужно через точку float.Parse("0.5"). Так же эта проблема проявляется и под Windows на машинах Sony Vaio.
Чтобы избежать таких проблем, используем, приведённый ниже, код.
(Нашел камрад Sergion)
Чтобы избежать таких проблем, используем, приведённый ниже, код.
(Нашел камрад Sergion)
Синтаксис:
Используется cpp
static function StrToFloat(str : String) : float {
if(str) {
ds = System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator;
if(ds == ",") str = str.Replace(".",",");
else str = str.Replace(",",".");
return float.Parse(str);
} else return 0;
}
if(str) {
ds = System.Threading.Thread.CurrentThread.CurrentCulture.NumberFormat.NumberDecimalSeparator;
if(ds == ",") str = str.Replace(".",",");
else str = str.Replace(",",".");
return float.Parse(str);
} else return 0;
}