C 金額轉中文大寫

2021-08-19 13:31:08 字數 1684 閱讀 1532

今天看到乙個庫是把金額轉中文大寫,看起來很容易,所以我就自己寫了

建立的專案是建立乙個 dot net core 的專案,實際上這個專案可以建立為 stand 的。

首先建立類,這個類的構造傳入乙個 double 作為人民幣

public

class money

private

double _money;

}

然後建立方法轉換

public

string

tocapital()

var str = getintpart();

getdecimalpart(str);

return str.tostring();

}

其中 getintpart 是轉換小數點前的部分,小數點之後的使用 getdecimalpart 計算。

然後建立一些使用的陣列

private

static

readonly list uppers = new list()

;private

static

readonly list units = new list()

;private

static

readonly list grees = new list()

;

轉換小數點前的**

stringbuilder str = new stringbuilder();

var money = _money;

for (int i = 0; money > 0.99999; i++)

但是這樣轉換得到的存在一些零,如輸入 100 會輸出 壹佰零拾零元 ,所以需要對輸出轉換

private stringbuilder getintpart()

str = str.replace("零億", "億零");

str = str.replace("零萬", "萬零");

str = str.replace("零拾", "零");

str = str.replace("零佰", "零");

str = str.replace("零仟", "零");

str = str.replace("零零", "零");

str = str.replace("零零", "零");

str = str.replace("零億", "億");

str = str.replace("零萬", "萬");

str = str.replace("零元", "元");

return

str;

}

轉換小數的**

private

void

getdecimalpart(stringbuilder str)

money = money / 10;}}

所有**

**請看

參見:src/money.php · 趨勢軟體/capital - 碼雲 gitee.com

數字金額轉中文大寫金額

用來將數字金額轉化成中文大寫的金額 param value return public static string changetobig double value 段內位置表示 char vunit 段名表示 char digit 數字表示 decimalformat df new decimal...

java 金額轉中文大寫

public class chinanumber private static string chs number 傳入數字金額字串,返回數字金額對應的中文大字與讀法 param money 金額字串 return 金額中文大寫 public static string getchsnumber s...

數字轉中文大寫金額

不知道大家有沒有遇到需要將數字轉成中文大寫的需要,如下圖 這是轉換的 有需要的的ctr c吧,不謝。public class publicconvert private static string ls dw zh private static string num dw private stati...