Преобразование строки к типу данных float

Я должен преобразовать содержание Текстового поля (который является валютой) к плаванию типа данных. Я преобразовал бы в сингл?

txtPurchItemCorrectPrice. Текст. Обрезка ();

5
задан user279521 1 July 2010 в 13:28
поделиться

4 ответа

Если вы имеете дело с валютой, я бы использовал по крайней мере double , если не десятичный . Тем не менее, вы хотите:

double value = double.Parse(txtPurchItemCorrectPrice.Text.Trim());

Если вы не уверены, будет ли это число:

double value;
bool isOK = double.TryParse(txtPurchItemCorrectPrice.Text.Trim(), out value);
9
ответ дан 18 December 2019 в 14:42
поделиться

Вы имеете в виду тип C# float?

float f = float.Parse(text);

Или...

float value;
if (float.TryParse(text, out value))
{
     // Yay!
}
else
{
     // Boo! Parse failed...
}

Обратите внимание, что приведенный выше код будет использовать текущую культуру. Возможно, вы захотите указать другую культуру, например

...
if (float.TryParse(text, out value, NumberStyles.Float,
                   CultureInfo.InvariantCulture))
...

EDIT: Если это действительно столбец float в базе данных, вы возможно захотите использовать double вместо этого.

Обратите внимание, что информация о валюте обычно не хранится с использованием float/double; она должна храниться с использованием десятичного типа, например, decimal (C#) и NUMBER (SQL).

4
ответ дан 18 December 2019 в 14:42
поделиться

Dim x As Double = Convert.ToDouble (txtPurchItemCorrectPrice.Text.Trim ())

0
ответ дан 18 December 2019 в 14:42
поделиться
float.TryParse(…)

Это позволяет избежать возникновения исключения при недопустимом вводе.

0
ответ дан 18 December 2019 в 14:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: