/*
* Description: 字符串处理的公共类
*/
public class MoneyConvert {
/*
* 将字符串转换成中文的大写货币值 @param moneyStr @return
*/
public static String convertToCapitalMoney(String moneyStr) {
double money = 0;
try {
money = Double.parseDouble(moneyStr);
} catch (Exception e) {
e.printStackTrace();
}
return convertToCapitalMoney(money);
}
/*
* 将数字转换成中文的大写货币值 @param moneyValue @return
*/
public static String convertToCapitalMoney(double moneyValue) {
double money = moneyValue + 0.005; // 防止浮点数四舍五入造成误差
String Result = "";
String capitalLetter = "零壹贰叁肆伍陆柒捌玖";
String moneytaryUnit = "分角圆拾佰仟万拾佰仟亿拾佰仟万拾佰仟亿拾佰仟";
String tempCapital, tempUnit;
int integer; // 钱的整数部分
int point; // 钱的小数部分
int tempValue; // 钱的每一位的值
integer = (int) money;
point = (int) (100 * (money - (float) integer));
if (integer == 0)
Result = "零圆";
/*
* 货币整数部分操作 1. 依次取得每一位上的值 2. 转换成大写 3. 确定货币单位
*/
for (int i = 1; integer > 0; i++) {
tempValue = (integer % 10);
tempCapital = capitalLetter.substring(tempValue, tempValue + 1);
tempUnit = moneytaryUnit.substring(i + 1, i + 2);
Result = tempCapital + tempUnit + Result;
integer = integer / 10;
}
/*
* 货币小数部分操作
*/
tempValue = (point / 10);
for (int i = 1; i > -1; i--) {
tempCapital = capitalLetter.substring(tempValue, tempValue + 1);
tempUnit = moneytaryUnit.substring(i, i + 1);
Result = Result + tempCapital + tempUnit;
tempValue = point % 10;
}
return Result;
}
// 测试类
public static void main(String[] args) {
String money1 = MoneyConvert.convertToCapitalMoney("33333.214");
System.out.println(money1);
String money = MoneyConvert.convertToCapitalMoney(33333.214);
System.out.println(money);
}
}
分享到:
相关推荐
在IT领域,尤其是在财务软件开发或者数据分析应用中,将数字转换为大写货币格式是一项常见的需求。这通常涉及到编程语言中的字符串处理、数值计算以及格式化输出等技术。本篇文章将详细探讨如何实现一个数字转大写...
- 将数字转换为字符串,然后拆分成整数部分和小数部分。 - 对整数部分进行处理,使用循环和条件判断,生成大写汉字的字符串。 - 对小数部分进行处理,类似整数部分,但不添加单位。 - 合并整数和小数部分的字符...
此函数实现了将一个数字字符串转换为带有逗号分隔符的标准货币格式。 1. **参数处理**: - 首先,通过调用 `toString()` 方法将输入的数字或字符串去除货币符号 `$` 和逗号 `,`。 - 使用 `isNaN()` 函数判断处理...
- `changeA(String str)`方法用于处理整数部分,根据输入的整数字符串转换成大写中文。 - `changeB(String str)`方法用于处理小数部分,将小数部分转换成大写中文。 - 主方法`main()`中调用了这两个辅助方法,...
在MySQL数据库中,有时我们需要将数字金额转换成人民币的大写形式,这在财务报表或会计系统中非常常见。为了实现这一需求,我们可以自定义一个函数或者利用现有的字符串处理函数。以下是一个关于如何在MySQL中实现这...
2. StrConv 函数:用于转换字符串的案例,例如将小写字母转换为大写字母,或者将 Unicode 字符串转换为 ANSI 字符串。StrConv 函数有三个参数,分别是要转换的字符串、转换类型和可选的 LocaleID。 3. InStrRev ...
在IT行业中,尤其是在财务软件开发或者处理金融数据时,经常需要将阿拉伯数字(小写)转换为汉字大写,这是因为汉字大写数字在中国的金融交易中是标准的表示方式,可以有效防止因为数字混淆而引起的错误。...
在财务系统、银行交易以及其他需要处理货币的场合中,经常会遇到将数字转换成大写金额的需求。例如,在开具支票时,需要将数字金额转换成大写形式,以避免被篡改。这种转换在计算机编程中是一个常见的需求。 #### ...
在这个场景下,它可能用于创建一个简单的工具或者功能,将用户输入的数字转换成相应的中文大写形式。 描述提到“功能还不是很强,只是一个初级练习”,这暗示了该代码可能是一个基础示例或者教学用例,可能只包含...
该函数可以将一个给定的字符串,例如 "1234.55",转换成正确的中文货币描述,例如 "人民币壹仟贰佰叁拾四元五角五分"。 首先,让我们了解一下该函数的功能: 1. 对一个给定的字符串进行转换,例如 "1234.55",转换...
以下是一些关于如何使用JavaScript将字符串转换为货币格式以及将小写金额转换为大写金额的关键知识点: 1. **货币格式化**: - JavaScript 提供内置的 `Number.prototype.toFixed()` 方法来将数字格式化为带有指定...
本主题聚焦于一个特定的转换任务:将罗马数字转换为中文大写人民币数字。这个任务常见于财务软件或者自动化的会计系统中,因为在中国,大额金额通常使用中文大写来表示,以避免因数字笔画相似而引起的混淆和欺诈。 ...
1. **罗马数字到阿拉伯数字**:首先,我们需要编写一个函数,将输入的罗马数字字符串转换为其对应的阿拉伯数字。这可以通过创建一个映射表,存储每个罗马数字对应阿拉伯数字的值,然后遍历字符串并应用加减法则来...
在C++编程中,将`double`型数字转换为大写数字是一项常见的需求,尤其是在处理财务、会计等领域的数据时。通常,我们所说的"大写数字"是指将阿拉伯数字(0-9)转换为其对应的汉字表示,例如1对应于'壹',2对应于'贰'...
理解并实现这样的功能,不仅可以帮助我们处理特定的数据格式化任务,也能加深对数据处理、文件操作和字符串转换等编程概念的理解,这对于提升IT专业技能非常有帮助。在实际工作中,这样的工具可以极大地提高工作效率...
9. **Upper()** 和 **Lower()** 函数:将字符串转换为全大写或全小写。 10. **Space()** 函数:创建包含指定数量空格的字符串。 11. **StrConv()** 函数:用于字符串的转换,如大小写转换、数字与文本之间的转换等...
1. 数字到字符串:将数值转换为字符串,便于后续处理。 2. 分段处理:人民币金额通常由个位、十位、百位、千位等组成,需要分段进行转换。 3. 字符映射:为每个数字找到对应的中文大写字符。例如,0对应“零”,1...
在IT行业中,尤其是在财务软件开发或者银行系统的编程中,经常需要将数字金额转换为中文大写的表示形式,以便于财务报告、单据打印等场景。本文将深入探讨如何使用C#语言来封装一个类,实现将金额转换为大写金额的...
在Java编程中,将钱币小写金额转换为大写金额是一项常见的需求,特别是在财务系统或者电商平台上,为了符合规范和避免误解,金额通常会以大写形式展示。本知识点主要探讨如何利用Java实现这一功能。 首先,我们需要...
3. **大写转换**:遍历金额字符串的每一位,根据数字映射表将其转换为大写汉字。同时,需要处理特殊字符如'.'(代表小数点)和','(千位分隔符),并根据规则转换为汉字的「点」和「元」。 4. **零处理**:在金额的...