ToolAct工具行動

人民幣大小寫轉換

線上人民幣大寫金額轉換工具,將數字金額轉為中文大寫

輸入內容
字元數: 0
轉換結果
字元數: 0

什麼是人民幣大寫金額?

人民幣大寫轉換器用來把數字金額轉換為正式的中文金額大寫寫法。它會使用壹、貳、參、元、角、分等財務書寫形式,使發票、收據、合約、付款單和財務表格中的金額更難被竄改。這個工具適合在需要把阿拉伯數字金額快速寫成可核對的中文金額時使用。它不是匯率換算器,也不是稅務或會計審批工具。正式使用前仍要注意四捨五入、負數、零位處理、小數位,以及機構是否要求以「整」「正」等特定結尾。

使用方法

使用方法

  1. 在輸入框中輸入數字金額(例如 1234.56)
  2. 中文大寫金額將自動顯示在輸出框中
  3. 點選「複製」複製轉換結果

財務格式注意事項

  • 仔細檢查小數部分;中文大寫金額通常會明確寫出元、角、分以防止篡改。
  • 對於發票、合約和報銷單,請先確認您組織的四捨五入和零處理規則,然後再複製結果。

使用場景

將數字金額轉換為人民幣中文大寫輸入正數或負數的小數金額,工具會將輸入過濾為數字、一個小數點和可選的前導減號,然後轉換為包含元、角、分單位的正式人民幣大寫文字。渲染器以每四位數一組(中文財務中使用的萬和億位值斷點)走訪整數部分,並將小數部分寫為角和分,任何缺失的位置都會明確標註「零」,這正是防止讀者事後插入額外數字的關鍵。
在本地準備發票和財務文字輸出適用於需要將數字金額寫成正式中文大寫幣別文字的發票、收據、報銷單和財務備註。確認轉換文字無誤且已與財務團隊確認四捨五入政策後,即可直接複製輸出,因為有些組織在列印前對角和分的處理方式不同。文字本身遵循中國財務文件規範規定的標準,而非自訂的機構風格。
避免意外的非數字字元貼上的內容在進入輸入框時會被清理,因此貨幣符號、逗號、空格和其他雜散字元會在轉換前被移除。兩個面板上的字元數統計有助於確認結果文字已產生再進行複製。在列印或蓋章正式財務文件前,請重新檢查來源金額,因為從試算表貼上時常會帶有隱藏的全形逗號,快速瀏覽輸入框可能看不出來。
處理整數金額和「整」字結尾對於以 .00 結尾的整數金額,轉換器會輸出標準財務格式的文字並附上「整」字。當收據、合約行或銀行憑證需要稽核人員在綁定金額上預期的嚴格結尾標記時使用此功能,並在特定範本要求明確的「零角零分」時配合使用。省略「整」是正式收據最常見的退件原因之一,因此務必確認接收範本是否需要它。
驗證負數金額和零值文字輸入前導減號預覽虧損、退款或沖銷的呈現方式,並檢查零值情況確認「零元整」在邊界處如何顯示。0.10 的退款應顯示為「壹角」而非「零元壹角」,因此即使元的部分為零,角和分的單位仍會保留。在列印或蓋章前,務必將符號、數字以及角和分的單位與來源發票進行交叉比對。

技術原理

人民幣大寫書寫遵循 GB/T 28805 及中國人民銀行票據規則。每個阿拉伯數字對應一個防竄改的大寫字元(0→零、1→壹、2→貳、3→參、4→肆、5→伍、6→陸、7→柒、8→捌、9→玖),位值使用拾、佰、仟 表示十、百、千,然後用萬和億每四位數分組。金額單位後綴為元表示元,角表示第一位小數,分表示第二位小數——人民幣僅有兩位小數。 轉換器從最高有效位到最低有效位逐位走訪整數部分。將數字分成每四位一組(萬位斷點),第二組到第十二位(億位斷點),第三組為更高位。在每組內,連續的零壓縮為一個零標記,組末尾的零被丟棄,這就是為什麼 10,001 讀作「壹萬零壹元」而非「壹萬零零壹元」。小數部分逐位渲染為角和分;如果任一位置為零,規則會寫出零角或零分,以防止讀者竄改額外數字,當兩位小數都為零時,整數書寫以結尾詞「整」(或其變體「正」)關閉。 邊界情況驅動了大部分實現面。負數金額加上前綴「負」。零元非零角或分時省略元元素,讀作「壹角」而非「零元壹角」。支援的最大量級受 Number.MAX_SAFE_INTEGER(2^53 - 1)限制,但 GB/T 規則本身擴展到大約 14 位整數(約 99 兆元),超出部分需使用基於字串的大數走訪取代浮點運算。第三位小數向上四捨五入到分列也必須在蓋章正式收據前符合收款機構的政策。

  • 數字對照表:0-9 → 零壹貳參肆伍陸柒捌玖,防竄改大寫字形由 GB/T 28805 和人民銀行票據規則標準化。
  • 位值:拾(10)、佰(100)、仟(1,000)、萬(10^4)、億(10^8);分組以四位為單位,而非西方的三位。
  • 零壓縮:四位數組內的連續零壓縮為一個零,組末尾的零被丟棄(10,001 → 壹萬零壹元,而非壹萬零零零壹元)。
  • 小數位數:僅有角(1/10 元)和分(1/100 元);整元金額以「整」結尾,缺失的小數位寫為零角或零分以防插入。
  • 符號與零元:負數加前綴「負」;0.10 讀作「壹角」(而非零元壹角);0.00 讀作「零元整」。
  • 量級上限:GB/T 規則覆蓋約 14 位整數(最大約 99,999,999,999,999.99 元);超出 Number.MAX_SAFE_INTEGER 時需使用基於字串的走訪以避免浮點漂移。

範例

基本轉換

輸入:  1234.56
輸出: 壹仟贰佰叁拾肆元伍角陆分
用途: 標準收據或發票金額

元以下金額(僅小數)

輸入:  0.50
輸出: 伍角零分
說明:  元的部分為零時會省略「元」字;保留「零分」可避免將零竄改為非零的分位數

大額金額(7 位數,無小數)

輸入:  1000000
輸出: 壹佰万元整
說明:  「整」用於結束整元金額;「万」依 GB/T 規範每 4 位數分組

負數金額

輸入:  -50.30
輸出: 负伍拾元叁角零分
說明:  開頭的「负」字代表退款、沖銷或虧損

常見問題

這個工具是做什麼的?

它把數字金額轉成支票、發票、合約上使用的中文大寫格式:例如 1234.56 → 壹仟貳佰參拾肆元伍角陸分。會用大寫字是因為相對於小寫的一/二/三,這些字比較難用筆塗改。

用到哪些字?

0=零、1=壹、2=貳、3=參、4=肆、5=伍、6=陸、7=柒、8=捌、9=玖;位數標記:拾(10)、佰(100)、仟(1,000)、萬(10,000)、億(10^8)。貨幣單位:元、角(1/10 元)、分(1/100 元)。

中間出現 0 是怎麼處理的?

中間的 0 會被壓縮:1,002 → 壹仟零貳。連續多個 0 也會合併:10,008 → 壹萬零捌。同一個萬位段內結尾的 0 不讀出:12,000 → 壹萬貳仟。如果整個金額沒有小數,輸出末尾會加上「整」。

如果金額小數超過兩位呢?

中文大寫只到角和分,也就是小數點後兩位。本頁會先四捨五入到 2 位再轉換。需要更高精度的話,那已不屬於正規會計實務,大寫格式本身也不支援。

為什麼兆級會用「萬億」表示?

中文數字以萬(10^4)為單位分組,不是以千。10^8 = 億;10^12 在古制中稱「兆」,但現代用法多寫成「萬億」。本頁在金額超過 10^12 時,預設輸出「萬億」。

最大支援多少金額?

可達 999,999,999,999.99(接近一萬億)。實務上的支票很少超過這個數字。10^12 以上有兆/京/垓 等更大的單位,但已不屬於會計實務。

轉換是在本機完成的嗎?

是。轉換邏輯是純前端 JavaScript,金額不會被上傳或記錄。