將數字字串(含小數)轉換為中文大寫金額格式,如 1234.56 → 壹仟貳佰叁拾肆圓伍角陸分。支援至萬億元(12 位整數 + 2 位小數)。
public string ConvertSum(string str) {
if (!IsPositveDecimal(str)) return "輸入的不是正數字!";
if (double.Parse(str) > 999999999999.99) return "數字太大...";
// 分割整數/小數部分
string[] parts = str.Split('.');
if (parts.Length == 1) return ConvertData(parts[0]) + "圓整";
return ConvertData(parts[0]) + "圓" + ConvertXiaoShu(parts[1]);
}
ConvertDigit。ConvertDigit + 「萬」 + 高位 ConvertDigit。ConvertChinese。Convert2Digit (十位+個位)。Convert3Digit (百+十+個)。Convert4Digit (千+百+十+個)。switch(str) {
case "0": return "零"; case "1": return "壹"; ... case "9": return "玖";
}
Replace 清理冗餘零,輸出符合財務規範。Label1.Text = ConvertSum("1234567890.12");
// 輸出:壹拾貳億叁仟肆佰伍拾陸萬柒仟捌佰玖拾圓壹角貳分