Oo緣來是你oO
BlogJava
首頁
新隨筆
新文章
聯系
聚合
管理
posts - 120,comments - 125,trackbacks - 0
<
2006年10月
>
日
一
二
三
四
五
六
24
25
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
(6)
給我留言
查看公開留言
查看私人留言
隨筆分類
(62)
DataBase(2)
Java (3)
Java Script(13)
SoureCode(15)
Web 頁面(2)
外文翻譯(2)
技術網摘(2)
精美圖片(4)
經典 C++(3)
隨筆人生(16)
隨筆檔案
(120)
2009年3月 (1)
2009年1月 (2)
2008年12月 (5)
2008年3月 (2)
2007年10月 (2)
2007年4月 (4)
2007年2月 (2)
2006年12月 (3)
2006年11月 (4)
2006年10月 (27)
2006年9月 (7)
2006年8月 (56)
2006年7月 (5)
JavaScript
JavaScript.com
w3schools.com --- JavaScript Tutorial
WebReference.com --- JavaScript
個人博客
Oo緣來是你oO --- CnBlogs
Oo緣來是你oO --- CppBlog
Oo緣來是你oO --- CSDNBlogs
技術網站
The Code Project
WebReference.com
Web服務_TechTarget IT專家網
邪惡八進制
有一只企鵝叫Linux
ChinaUnix.net
GCC home page!
linux寶庫
有一部咖啡叫Java
Java Examples from The Java Developers Almanac 1.4
Java Language Specification --- Second Edition
JavaJava世界_中文論壇
Java開源大全
Java愛好者
SUN中國技術社區
中國Eclipse社區
有一部經典叫C++
C FAQs
C Programming Reference
C-C++ Reference
CPP Home
Cprogramming
STL 中文站
The C Standards Committee
The C++ resources network
The C++ Standards Committee
系列文章
構建項目公共輔助類__CommonUtils
《程序員》特別策劃之Java十年再回首
中國程序員的26種能力
如何讓你的程序運行的更快
經典Blog
Cat _ 用自己的雙手創造未來
eamoi之Coder日志
Flyingis
zbw25 _ 讀書、思考、生活
搜索
積分與排名
積分 - 144920
排名 - 425
最新評論
1.?re: JavaScript中的Boolean,你了解多少?
評論內容較長,點擊標題查看
--伊澤godv
2.?re: JavaScript中的Boolean,你了解多少?
除此之外,容易混淆的還有數組與Array對象;數與Number對象;字符串和String對象;事件與Event對象
--ezqrq
3.?re: JavaScript中的Boolean,你了解多少?
評論內容較長,點擊標題查看
--ezqrq
4.?re: 表格列寬鼠標拖動[未登錄]
為什么只顯示出那個拖動的符號,拖動不了呢
--呵呵
5.?re: JavaScript中的Boolean,你了解多少?[未登錄]
typeof true 'boolean'
type of new Boolean(false) 'object'
object 總為真
--hewei
閱讀排行榜
1.?大道至簡 Java 23種模式一點就通(轉貼)(6522)
2.?Webdings字體圖案(6220)
3.?什么是FreeMarker?(5517)
4.?如何讓你的程序運行的更快 (2)--- JavaScript中的數組之字符串下標的運用 (5210)
5.?JavaScript中的Boolean,你了解多少?(4961)
6.?關于 sizeof() 的一些思考(4501)
7.?敏捷開發與極限編程的簡介(4358)
8.?【原】CSS+JavaScript 實現TabPane頁簽(4039)
9.?JavaScript For Beginners(轉載)(3879)
10.?QQ木馬win32.QQPsw.wunaiwangdaod.a刪除方法?。?!(3662)
評論排行榜
1.?JavaScript中的Boolean,你了解多少?(14)
2.?什么是高效算法?(9)
3.?優秀的編程人員應該掌握的十種編程語言(轉載)(6)
4.?如何讓你的程序運行的更快(1)---String VS StringBuffer(6)
5.?保存ResultSet中的數據(Java Source Code)(5)
如何將字符串或者數字轉換成大寫貨幣
???????????????????????????????????
如何將字符串或者數字轉換成大寫貨幣
??????????????????????????????????????????????????
馬嘉楠
????????? 2006-10-16
注:示例程序會將字符串或者數字轉換成大寫貨幣的表現形式??梢园堰@一部分放到字符串處理的公共類 StringUtils 中,和 DateUtils (《
時間日期的一些處理方法
》
)一起,作為項目的公共部分 CommonUtils ,供其它程序進行調用。CommonUtils 就好像是一個輔助工具,使我們能更好的完成項目。我會逐步去添加完善 CommonUtils ,你也可以從現在開始創建自己的代碼庫,畢竟有很多有用的代碼是可以復用的。省時省力,何樂而不為?
主要內容:
MoneyConvert.java --- 本文當中只涉及如何將字符串或者數字轉換成大寫貨幣的方法
主要功能:
1.???String convertToCapitalMoney(String moneyStr)?
??????將字符串轉換成中文的大寫貨幣值
2.???String convertToCapitalMoney(double moneyValue)
??????將數字轉換成中文的大寫貨幣值
文件:MoneyConvert.java
package
?Common.Utils.StringUtils;
/**?*/
/**
?*?
?*?<p>Description:?字符串處理的公共類</p>
?*?<p>Copyright?2006?mjn.</p>
?*?
@author
?ma?jia?nan
?*?@Create?Date?:?2006-10-16
?*?@Version?:?1.0
?
*/
public
?
class
?MoneyConvert?
{
????
/**?*/
/**
?????*?將字符串轉換成中文的大寫貨幣值
?????*?
?????*?
@param?
?moneyStr
?????*?
@return
?????
*/
????
public
?
static
?String?convertToCapitalMoney(String?moneyStr)?
{
????????
double
?money?
=
?
0
;
????????
try
?
{
????????????money?
=
?Double.parseDouble(moneyStr);
????????}
?
catch
?(Exception?e)?
{
????????}
????????
return
?convertToCapitalMoney(money);
????}
????
/**?*/
/**
?????*?將數字轉換成中文的大寫貨幣值
?????*?
?????*?
@param?
?moneyValue
?????*?
@return
?????
*/
????
public
?
static
?String?convertToCapitalMoney(
double
?moneyValue)?
{
????????
double
?money?
=
?moneyValue?
+
?
0.005
;????
//
防止浮點數四舍五入造成誤差
????????
????????String?Result?
=
?
""
;
????????String?capitalLetter?
=
?
"
零壹貳叁肆伍陸柒捌玖
"
;
????????String?monetaryUnit??
=
?
"
分角圓拾佰仟萬拾佰仟億拾佰仟萬拾佰仟億拾佰仟
"
;
????????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?
=
?monetaryUnit.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?
=
?monetaryUnit.substring(i,?i?
+
?
1
);?
????????????Result?
=
?Result?
+
?tempCapital?
+
?tempUnit;
????????????tempValue?
=
?point?
%
?
10
;?
????????}
????????
????????
return
?Result;
????}
}
測試代碼:
public
?
static
?
void
?main(String[]?args)?
{
??????String?money?
=
?MoneyConvert.convertToCapitalMoney(
"
3456789.347
"
);
??????System.out.println(money);
??????String?money1?
=
?MoneyConvert.convertToCapitalMoney(
3456789.347
);
??????System.out.println(money1);
}
結果:
叁佰肆拾伍萬陸仟柒佰捌拾玖圓叁角伍分
叁佰肆拾伍萬陸仟柒佰捌拾玖圓叁角伍分
馬嘉楠
jianan.ma@gmail.com
posted on 2006-10-16 16:00
馬嘉楠
閱讀(1429)
評論(4)
編輯
收藏
所屬分類:
SoureCode
FeedBack:
#
re: 如何將字符串或者數字轉換成大寫貨幣
2006-11-02 20:42 |
niu
l老大我怎么顯示的和你的不一樣???
零圓壹角貳分肆
貳拾叁萬肆仟伍佰陸拾柒圓捌角貳分肆
回復
更多評論
#
re: 如何將字符串或者數字轉換成大寫貨幣
2006-11-03 19:35 |
馬嘉楠
@niu
你的測試數據是多少???是完全copy我的程序么?作修改了么?
你有這句代碼么?
double money = moneyValue + 0.005 ; // 防止浮點數四舍五入造成誤差
回復
更多評論
#
re: 如何將字符串或者數字轉換成大寫貨幣
2006-11-10 13:54 |
casper
我也是這個問題 顯示有出入
回復
更多評論
#
re: 如何將字符串或者數字轉換成大寫貨幣
2011-06-17 16:03 |
sys025
你們拿著程序就只知道復制用么?自己調試下就能發現String capitalLetter = " 零壹貳叁肆伍陸柒捌玖 " ;零前面有個空格。。去掉就行了。
回復
更多評論
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關文章:
表格列寬鼠標拖動
【JavaScript】懸浮窗口
【JavaScript】列表(Select)選項(Option)的移動(上下左右)
【原】CSS+JavaScript 實現TabPane頁簽
【原】【JavaScript】列表元素上下左右移動:Select和Option的應用
【原創】CSS+JavaScript 實現菜單功能--改進版
Print Fibonacci Sequcnce
簡單的密碼驗證控件
蛇行填數
一道很簡單的老問題,求更好的解決方法
Copyright ©2025 馬嘉楠 Powered By
博客園
模板提供:
滬江博客
主站蜘蛛池模板:
昌黎县
|
凌海市
|
广饶县
|
文化
|
南昌县
|
霸州市
|
嘉义县
|
大余县
|
拜城县
|
长葛市
|
临夏市
|
怀来县
|
揭东县
|
留坝县
|
长治县
|
盱眙县
|
林芝县
|
延长县
|
册亨县
|
叙永县
|
喜德县
|
海阳市
|
郓城县
|
怀来县
|
饶阳县
|
思南县
|
邛崃市
|
汪清县
|
广安市
|
临汾市
|
罗甸县
|
乌兰浩特市
|
武陟县
|
黔西
|
来凤县
|
双柏县
|
凉城县
|
龙口市
|
虞城县
|
邛崃市
|
稻城县
|