Вопрос

Существует ли эквивалент C # для VB.NET FormatNumber функция?

То есть.:

JSArrayString += "^" + (String)FormatNumber(inv.RRP * oCountry.ExchangeRate, 2);
Это было полезно?

Решение

Как в C #, так и в VB.NET вы можете использовать либо .toString() функция или Строка.Формат () способ форматирования текста.

Используя метод .toString(), ваш пример может быть записан как:

JSArrayString += "^" + (inv.RRP * oCountry.ExchangeRate).ToString("#0.00")

В качестве альтернативы можно использовать строку.Format() это может быть записано как:

JSArrayString = String.Format("{0}^{1:#0.00}",JSArrayString,(inv.RRP * oCountry.ExchangeRate))

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

Для облегчения форматирования можно использовать другие символы форматирования, такие как D2 для 2 знаков после запятой или C для отображения в качестве валюты.В этом случае вы бы не захотели использовать программу форматирования C, так как это привело бы к вставке символа валюты и дополнительных разделителей, которые не были обязательными.

Видишь "Строка.Format("{0}", "форматирующая строка"};" или "Строковый формат для Int" для получения дополнительной информации и примеров использования String.Format и различных параметров форматирования.

Другие советы

Да, методы .toString(строка).Например,

int number = 32;
string formatted = number.ToString("D4");
Console.WriteLine(formatted);
// Shows 0032

Обратите внимание, что в C # вы не используете число для указания формата, но вы используете символ или последовательность символов.Изучение форматирования чисел и дат в C # занимает несколько минут, но как только вы поймете принцип, вы сможете быстро получить все, что захотите, просмотрев ссылку.

Вот пара статей MSDN, которые помогут вам начать :

Строки стандартного числового формата Типы форматирования

Вы можете использовать форматеры строк для достижения той же цели.

double MyNumber = inv.RRP * oCountry.ExchangeRate;
JSArrayString += "^" + MyNumber.ToString("#0.00");

Хотя я бы рекомендовал использовать toString в этом случае, всегда имейте в виду, что вы можете использовать ЛЮБУЮ функцию VB.Net или класс из C #, просто сославшись Microsoft.VisalBasic.dll.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top