String formatNum(num, {point: 3}) {
if (num != null) {
String str = double.parse(num.toString()).toString();
// 分開截取
List<String> sub = str.split('.');
// 處理值
List val = List.from(sub[0].split(''));
// 處理點
List<String> points = List.from(sub[1].split(''));
//處理分割符
for (int index = 0, i = val.length - 1; i >= 0; index++, i--) {
// 除以三沒有余數、不等于零并且不等于1 就加個逗號
if (index % 3 == 0 && index != 0 && i != 1) val[i] = val[i] + ',';
}
// 處理小數點
for (int i = 0; i <= point - points.length; i++) {
points.add('0');
}
//如果大于長度就截取
if (points.length > point) {
// 截取數組
points = points.sublist(0, point);
}
// 判斷是否有長度
if (points.length > 0) {
return '${val.join('')}.${points.join('')}';
} else {
return val.join('');
}
} else {
return "0.0";
}
}
2019-04-12 flutter 數字千位符數,字格式化,金額格式化
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。