java 阿拉伯數字轉換成大寫數字

2021-04-23 06:37:46 字數 1802 閱讀 9463

public class moneyutil ;

/**

* 把金額轉換為漢字表示的數量,小數點後四捨五入保留兩位

* @param amount

* @return

*/ public static string amounttochinese(double amount)

long temp = math.round(amount * 100);

int numfen = (int)(temp % 10); // 分

temp = temp / 10;

int numjiao = (int)(temp % 10); //角

temp = temp / 10;

//temp 目前是金額的整數部分

int parts = new int[20]; // 其中的元素是把原來金額整數部分分割為值在 0~9999 之間的數的各個部分

int numparts = 0; // 記錄把原來金額整數部分分割為了幾個部分(每部分都在 0~9999 之間)

for(int i=0; ; i++)

boolean beforewaniszero = true; // 標誌「萬」下面一級是不是 0

string chinesestr = "";

for(int i=0; i 0) // 如果"萬"的部分不為 0, 而"萬"前面的部分小於 1000 大於 0, 則萬後面應該跟「零」

chinesestr = "零" + chinesestr;

chinesestr = "萬" + chinesestr;

} }

} chinesestr = partchinese + chinesestr;

} if("".equals(chinesestr)) // 整數部分為 0, 則表達為"零元"

chinesestr = chinesedigits[0];

else if(negative) // 整數部分不為 0, 並且原金額為負數

chinesestr = "負" + chinesestr;

chinesestr = chinesestr + "元";

if(numfen == 0 && numjiao == 0)

else if(numfen == 0)

else

return chinesestr;

} /**

* 把乙個 0~9999 之間的整數轉換為漢字的字串,如果是 0 則返回 ""

* @param amountpart

* @return

*/ private static string parttranslate(int amountpart)

string units = new string ;

int temp = amountpart;

string amountstr = new integer(amountpart).tostring();

int amountstrlength = amountstr.length();

boolean lastiszero = true; //在從低位往高位迴圈時,記錄上一位數字是不是 0

string chinesestr = "";

for(int i=0; ielse

temp = temp / 10;

} return chinesestr;

} public static void main(string args)

else } }

阿拉伯數字大寫轉換

public class genchinese private final static string str shu ji 大數量級 private final static string str shu ji 2 千內數量級 public genchinese param intnumber 需...

js將阿拉伯數字轉換成漢字大寫

適用場景 票據,結算憑證等。將任意數字的金額,轉換成漢字大寫的形式。例如 1234.50 壹仟貳佰叄拾肆圓伍角。壹 貳 叄 肆 直接貼 如下 阿拉伯數字轉換成大寫漢字 function numberparsechina money money parsefloat money if money ma...

英文數字轉換成為阿拉伯數字

include include include include includeusing namespace std define debug int parse void else if 1 twice check flag,do sth,clear flag else j 0 buf j c b...