【工具类】数值金额转中文大写金额

java中金额转大写和日期转大写 private static final String UNIT[] = { “万”, “千”, “佰”, “拾”, “亿”, “千”, “佰”,String[] cnDate = new String[]{“零”,“壹”,“贰”,“叁”,“肆”,“伍”,“陆”,“柒”,“捌”,“玖”};if (UNIT[unitIndex] == “亿” || UNIT[unitIndex] == “万”“拾”, “万”, “千”, “佰”, “拾”, “元”, “角”, “分” };“柒”, “捌”, “玖” }; 阅读详情

 数值金额若有计算,先.toFixed(2)四舍五入

/**
 * 数值金额转中文大写金额
 * @param {数值金额} money 
 */
Vue.filter('amountToChinese',(money) => {
    let cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');
    let cnIntRadice = new Array('', '拾', '佰', '仟');
    let cnIntUnits = new Array('', '万', '亿', '兆');
    let cnDecUnits = new Array('角', '分', '毫', '厘');
    let cnInteger = '整';
    let cnIntLast = '元';
    let maxNum = 999999999999999.9999;
    let integerNum;
    let decimalNum;
    let chineseStr = '';
    let parts;
    if (money == '') { return ''; }
    money = parseFloat(money);
    if (money >= maxNum) {
      return '';
    }
    if (money == 0) {
      chineseStr = cnNums[0] + cnIntLast + cnInteger;
      return chineseStr;
    }
    money = money.toString();
    if (money.indexOf('.') == -1) {
      integerNum = money;
      decimalNum = '';
    } else {
      parts = money.split('.');
      integerNum = parts[0];
      decimalNum = parts[1].substr(0, 4);
    }
    if (parseInt(integerNum, 10) > 0) {
      let zeroCount = 0;
      let IntLen = integerNum.length;
      for (let i = 0; i < IntLen; i++) {
        let n = integerNum.substr(i, 1);
        let p = IntLen - i - 1;
        let q = p / 4;
        let m = p % 4;
        if (n == '0') {
          zeroCount++;
        } else {
          if (zeroCount > 0) {
            chineseStr += cnNums[0];
          }
          //归零
          zeroCount = 0;
          chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
        }
        if (m == 0 && zeroCount < 4) {
          chineseStr += cnIntUnits[q];
        }
      }
      chineseStr += cnIntLast;
    }
    //小数部分
    if (decimalNum != '') {
      let decLen = decimalNum.length;
      for (let i = 0; i < decLen; i++) {
        let n = decimalNum.substr(i, 1);
        if (n != '0') {
          chineseStr += cnNums[Number(n)] + cnDecUnits[i];
        }
      }
    }
    if (chineseStr == '') {
      chineseStr += cnNums[0] + cnIntLast + cnInteger;
    } else if (decimalNum == '') {
      chineseStr += cnInteger;
    }
    return chineseStr;
});

 效果:

 

SQL 金额数值转换成中文大写 需求:将金额转换成中文大写格式填入单据合计行: _佰_拾_万_仟_佰_拾_元_角_分。测试:将amount列的值转换为中文大写。2.在查询条件中直接转换。 阅读详情

相关推荐

java实现金额数字转换为中文大写

import java.io.*; import java.lang.IllegalArgumentException; public class ConvertNum{ /** * 把金额阿拉伯数字转换为汉字表示,小数点后四舍五入保留两位 * 还有一种方法可以在转换的过程中不考虑连续0的情况,然后对最终的结果进行一次遍历合并连续的零 */ public static

cfan0801的专栏 6181

hutool- 数字计算

//数字计算 @Test public void test14(){ //会将double转为BigDecimal后计算 double te1=123456.123456; double te2=123456.128456; //加减乘除 add sub div mul Console.log(NumberUtil.add(1+1)); //选择保留小数位数 ,可以选择四舍五入或者全部舍弃等模式 Console.log(NumberUtil.round(te1,4));

weixin_43076660的博客 7314

一个金额转成中文大写的函数

--转自itpub论坛:http://www.itpub.net/thread-240281-1-1.html 网上找到了几个,但就这一个比较全面,考虑的比较细致,没有什么BUG;引用到此,方便以后查找使用。 CREATE OR REPLACE FUNCTION F_UPPER_MONEY(P_NUM IN NUMBER DEFAULT NULL) RETURN NVARCHAR2 IS

nisjlvhudy的专栏 3047

用hutool将数字转简体中文和繁体中文,支持金额模式

最近项目中用到金额转大写的地方,正好项目引用了hutool包,发现里面正好有这个功能 工具类: cn.hutool.core.convert.Convert#digitToChinese /** * 金额转为中文形式 * * @param n 数字 * @return 中文大写数字 * @since 3.2.3 */ public static String digitToChinese(Number n) { if(null == n) { return

penn 1万+

实现数字金额到中文大写的编程技巧

在创建“数字转换器”类时,可以定义如下属性和方法:属性可能包括:amount(String类型):存储需要转换的数字金额。result(String类型):存储转换结果的中文大写金额。unitMapper(Map类型):映射数字到中文单位的映射表。方法可能包括::设置需要转换的金额。:执行转换逻辑,将数字金额转换为中文大写。:返回转换后的结果。在方法中,逻辑执行的步骤可能包括:1. 验证输入金额的有效性。

weixin_30481539的博客 1259

FileZilla Server 1.2.0 TLS证书过期问题

FileZilla Server TLS证书过期后重新生成

Wigle的备忘录 7528

金额阿拉伯数字转换为汉字表示,小数点后四舍五入保留两位

更简便的方法: // cn.hutool.core.convert.Convert System.out.println(Convert.digitToChinese(2000.0)); // 贰仟元整 System.out.println(Convert.digitToChinese(50030.5));// 伍万零叁拾元伍角 直...

LLLLLiSHI的博客 2017

基于Arduino与脑电模块的意念控制LED灯环实现

脑机接口(BCI)技术通过采集和处理脑电信号,实现人脑与外部设备的直接交互。其核心原理是利用传感器捕捉大脑活动产生的微弱电信号,经过放大、滤波和特征提取,转换为可识别的指令。这项技术在医疗康复、神经反馈训练和人机交互等领域具有重要价值。本文聚焦于一个具体的工程实践:使用消费级NeuroSky TGAM模块采集专注度与放松度数据,通过Arduino平台解析信号,并驱动WS2812B LED灯环实现实时可视化反馈。项目涵盖了硬件选型、电路搭建、数据解析和光效映射等关键环节,为脑机接口入门和嵌入式开发提供了完整的

weixin_28721917的博客 284

ArithmeticUtils-高精度数学运算工具类

package com.org.cn.utils; import java.math.BigDecimal; /** * 用于高精确处理常用的数学运算 */ public class ArithmeticUtils { //默认除法运算精度 private static final int DEF_DIV_SCALE = 10; /** * 提供精确的加法运算 * * @param v1 被加数 * @param v2 加数 * @return 两个参数的和 *.

weixin_44801549的博客 806

【邻接表存图模板】vector邻接表、数组邻接表、链式前向星

一、目录 一、目录 二、前言 三、邻接表“详解” (一)边的信息 (二)几种邻接表的实现方法“详解” 1.数组邻接表 代码 2.vector邻接表 代码 vector邻接表还有一种魔性写法: 3.链式前向星 代码 四、总结 二、前言 本来之前自己太弱了,一直只会用邻接矩阵,后来发现邻接表才是主流... 参考&特别鸣谢: https://www.cnblog...

十里寒塘路♣烟花一半醒 3114

TC3xx芯片SPI多从机通信避坑指南:AUTOSAR框架下的DMA配置与片选切换

本文针对英飞凌TC3xx芯片在AUTOSAR框架下实现SPI多从机通信的实战难题,提供了详尽的避坑指南。重点解析了如何利用硬件支持的16路片选(SLSO)灵活切换,在AUTOSAR中正确配置不同时序的从设备,并深入探讨了异步模式下DMA的启用条件与关键配置细节,帮助开发者规避通信失败风险,提升系统可靠性。

nn3456的博客 153

金额小写转大写工具类

大写中文金额转数字小写金额

qq_24614847的博客 528

2026年【江苏“信息与未来”编程思维】真题及题解(T6:桌面游戏)

2026年【江苏“信息与未来”编程思维】真题及题解(T6:桌面游戏)

王老师青少年编程 536

金额数值转大写中文金额工具类备忘(参考)

金额数值转中文大写金额,从网上搜了下,拼凑了个工具类。   public class MoneyUtil { //调试时用main函数 public static void main(String args[]){ System.out.println(-999

LandWay的潜水区 995

华为OD机试真题 新系统2026-04-01 C语言 实现【空间占用计算】

员工A的磁盘空间经常被耗尽,他需要找到占用空间最大的目录或文件,然后决定如何清理文件释放空间。给定某一目录,请编写程序帮助他统计该目录内一级子目录和文件的占用空间,并返回目标目录一级子项(文件或子目录)中占用空间最大的项。

MISAYAONE的博客 231

工业质检终极方案:C#上位机融合 YOLO+Blob分析(一站式尺寸测量+缺陷检测)

本次上位机界面严格遵循工业现场操作规范简洁、直观、按钮大、文字清晰、参数可视化调节,操作人员为车间工人/质检员,无需复杂操作,所有功能一目了然。所有控件均为WinForms原生控件,拖拽即可完成布局,无任何自定义控件,开发效率拉满,核心布局永久复用本次实战完成的C#上位机+YOLO+Blob融合质检方案,是工业规则零件全尺寸质检的终极落地方案,完美解决了单一检测方案的所有短板,具备以下不可替代的工业价值。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1344

java实现中文大写金额转小写数字

package com.utils; import java.math.BigDecimal; /** * 中文金额转数字工具 * @date 2019/7/19 13:44 */ public class ChineseAmountUtil { private static char[] cnNum = new char[]{'零', '壹', '贰', '叁', '肆',...

王观前的专栏 3611

Open3D 球旋转算法(BPA)三维建模【2026最新版】

球旋转算法,博客长期更新,本文最新更新时间为:2026年4月11日。

点云侠的博客 37万+

将数值金额转换为中文大写金额

/** * 将数值金额转换为中文大写金额 * @param $amount float 金额(支持到分) * @param $type int 补整类型,0:到角补整;1:到元补整 * @return mixed 中文大写金额 */ function convertAmountToCn($amount, $type = 1) { // 判断输出的金额是否为数字或数字字...

峰 858

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

MYSQL 金额转大写中文

CREATE FUNCTION `func_changeToChineseMoney`(MONEY DECIMAL(14,2)) RETURNS VARCHAR(150) CHARSET utf8 DETERMINISTIC BEGIN DECLARE RESULT VARCHAR(100); -- 返回字符串 DECLARE NUM_ROUND VARCHAR(100...

weixin_40013130的博客 4136

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

ORACLE 金额转大写中文

CREATE OR REPLACE FUNCTION func_changeToChineseMoney(P_NUM IN NUMBER DEFAULT NULL) RETURN NVARCHAR2 IS RESULT NVARCHAR2(100); --返回字符串 NUM_ROUND NVARCHAR2(100) := TO_CHAR(ABS(ROUND(P_NUM, 2))); ...

weixin_40013130的博客 1319

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

JAVA大写金额转小写金额过程

JAVA大写金额转小写金额过程     在挖掘项目中需要用到大写金额转化为小写金额,在网上搜索了一下都是小写转化为大写的过程。     因为小写是有规范的,而大写的金额很难找到一个统一的规范,于是总结了一条可用的大写转小写规范   过程如下:   1.大写的金额可以分为2级别,是以文字中的最后一个倍数单位为标准的。如亿 万 仟 百 十 等。定义这些为第一级别的操作  

rmnjava的专栏 1593

中文大写数字转阿拉伯数值工具类

中文大写数字转阿拉伯数值工具类网上一般都是阿拉伯数值转中文的大写数字,用在发票上,却几乎没有中文数字转阿拉伯数值。写个工具类,记录一下。 网上一般都是阿拉伯数值转中文的大写数字,用在发票上,却几乎没有中文数字转阿拉伯数值。写个工具类,记录一下。 支持小数点,(中文是点) import java.util.HashMap; import java.util.Map; import org.apach...

曱熊的博客 1137

js转换金额为中文大写

js转换金额为中文大写: function changeMoneyToChinese(money){ var cnNums = new Array("零","壹","贰","叁","肆","伍","陆","柒","捌","玖"); //汉字的数字 var cnIntRadice = new Array("","拾","佰","仟"); //基本单位 var c

gang_strong的专栏 1万+

SQL金额转大写

create function [dbo].[fn_getformatmoney] (@money numeric(14,2)) returns nvarchar(32) as begin declare @money_num nvarchar(20) --存储金额的字符形式 , @money_chn nvarchar(32) -...

dinge8714的博客 1473

js金额转中文汉字大写

js金额转中文汉字大写 convertCurrency(money) { //汉字的数字 let cnNums = new Array( "零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖" ); //基本单位 let cnIntRadice = new Array("", "

fanzijianPobo的博客 592
上一篇: 【工具类】格式化金额:逗号分隔三位且保留两位小数
下一篇: 【ant design vue】解决Tabs选项卡打开时不选择第一个选项卡页
谭CV
博客等级 码龄9年 73粉丝 85原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值