Использование asp как создать форматированную валюту с запятыми?

#asp-classic #vbscript

#asp-classic #vbscript

Вопрос:

Использование asp. Пытаюсь отформатировать десятичное число, чтобы добавить запятые. Существуют ли в asp простые в использовании функции или методы для перехода от десятичного значения к формату валюты с запятыми?

Примеры:

DecimalValue = 3439,01 CurrencyValue = "3,439.01"
DecimalValue = 3843838.38 CurrencyValue = "3,843,838.00"

Ответ №1:

используйте функцию FormatCurrency на vbscript

полный синтаксис таков: FormatCurrency(Выражение[,числовыйафтердектор[, ВклЮчающийDig[,использующийparfornegnum[,групповыйdig]]]])

пример:

 FormatCurrency(20000)
  

вывод = 20 000,00 долларов

пример установки количества десятичных знаков:

 FormatCurrency(20000,5)
  

вывод = 20 000,00000 долларов

Комментарии:

1. VBScript не будет работать в моем сценарии. Вы случайно не знаете код asp, который мог бы добавлять запятые? спасибо

2. @Marc Noon: Хотя ваш вопрос помечен VBScript? Кроме того, вы говорите о классическом ASP или ASP.NET ?

3. @Marc: Классический ASP представляет собой смесь html и VBScript. В html вы можете использовать JavaScript, но нет «asp-кодов», отличных от vbscript или javascript. Если вы имеете в виду ASP.Net это совершенно другая реализация, и на нее никогда не следует ссылаться просто как на ASP из-за путаницы с классической версией. Не могли бы вы, пожалуйста, уточнить, какую вы используете?

Ответ №2:

Чтобы расширить ответ Карлтона Дженке, для этого можно использовать 2 функции (вы упомянули форматирование в качестве валюты в заголовке вопроса, но не включили символы валюты в текст вопроса):

  1. formatnumber возвращает выражение, отформатированное как число.
  2. formatcurrency возвращает выражение, отформатированное как значение валюты, используя символ валюты, определенный в системной панели управления.

Обе функции принимают одинаковые аргументы, которые являются:

 Expression [,NumDigitsAfterDecimal [,IncludeLeadingDigit
[,UseParensForNegativeNumbers [,GroupDigits]]]]
  
  1. Expression является ли единственным обязательным аргументом, являющимся числом
    вы хотите отформатировать.
  2. NumDigitsAfterDecimal это числовое значение, указывающее, до скольких знаков после запятой вы хотите округлить. Значение по умолчанию равно -1, что указывает на то, что следует использовать региональные настройки компьютера.
  3. IncludeLeadingDigit это константа tristate (см. Ниже), которая указывает, хотите ли вы включать начальный ноль для значений от -1 до 1.
  4. UseParensForNegativeNumbers это еще одна константа tristate, которая указывает, хотите ли вы, чтобы отрицательные значения заключались в круглые скобки, а не использовали символ минуса.
  5. GroupDigits , который является искомым аргументом, также является константой tristate и используется для указания того, хотите ли вы группировать числа, используя системный разделитель групп.

Константы tristate принимают одно из следующих значений:

  1. -2 используется по умолчанию и указывает, что следует использовать значение по умолчанию из региональных настроек компьютера.
  2. -1 верно.
  3. 0 равно false.

Комментарии:

1. Всегда пожалуйста. Честно говоря, я не ожидал от вас никаких отзывов по этому поводу, учитывая, сколько ему лет; Я просто случайно наткнулся на это в своих путешествиях и хотел предоставить немного больше деталей для тех, кто может сделать то же самое в the suture.