簡體   English   中英

在 Dart 中將雙精度和整數轉換為貨幣

[英]Convert double and integer to currency in Dart

我跟着這個代碼,但我沒有得到正確的答案

print('1234512.00'.replaceAllMapped(new RegExp(r'(\d{1,2})(?=(\d{3})+(?!\d))'), (Match m) => '${m[1]},'));

輸出: 1,234,512.00

但我想要 12,34,512

示例

100000 => 1,00,000

7446016.38 => 74,46,016.38

我猜你想格式化印度盧比值。

為簡單起見 - 使用intl包,它是NumberFormat類,它也可以格式化貨幣。

安裝它,導入到您的代碼中並使用如下:

import 'package:intl/intl.dart';

final formatter = NumberFormat.currency(
      locale: 'hi_IN',
      decimalDigits: 2,
      symbol: '',
    );
final formattedValue = formatter.format(num.parse('1234512.01'));

print(formattedValue);


將在行尾刪除.00 的附加格式化程序:

final formatter = NumberFormat('##,##,###.##');
    final formattedValue = formatter.format(num.parse('11111111000.001'));

1111000.001將變成11,11,000
1111000.01將變成11,11,000.01

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM