Pages

2013-09-01

中文數字國字大寫轉換

財務報表程式常會遇到將金額轉換成中文國字大寫的需求,這類的處理邏輯直接上網搜尋別人寫的程式碼比較快,連研究裏頭的程式邏輯都懶了。

Chinese Number

微軟有提供「Microsoft Visual Studio International Feature Pack 2.0」元件可以處理這一塊,但它有301轉換語意的bug,而且是2009年的作品,沒再更新了。

網上找了別人分享的語法,測試後可行。但裏頭邏輯寫得很複雜難懂,暫時將就。

Mess Code

待後來有時間研究想整理上面的程式碼時,覺得應該有更好的作法,搜尋下發現更洗鍊優美的寫法。看到這樣優美的Code,很難說服自己「將就」使用混亂的Code。

Good Code

作者的原始轉換程式碼在處理大金額時單位呈現有些小問題,我修正後回饋至其回文串裏。為了搭配合作者優美的程式寫法,修正碼中的搜尋移除重複的演算法,也特別洗鍊。

No comments: