create or replace function getbigmoneystr(money in number) return varchar2 is
tmp_str varchar2(20);
money_str varchar2(20);
val_j varchar2(20);
len_j number;
k number;
i number;
j number;
m number;
result varchar2(40);
type my_type is varray(20) of varchar2(4);
num constant my_type := my_type('1',
'2',
'3',
'4',
'5',
'6',
'7',
'8',
'9',
'0');
num_str constant my_type := my_type('壹',
'貳',
'叄',
'肆',
'伍',
'陸',
'柒',
'捌',
'玖',
'零');
begin
tmp_str := to_char(money * 100);
len_j := length(tmp_str);
k := 11 - len_j;
result := substr(tmp_str, 1, 1);
m := 2;
for i in 1 .. len_j loop
begin
if k = 1 then
money_str := '仟';
elsif k = 2 then
money_str := '佰';
elsif k = 3 then
money_str := '拾';
elsif k = 4 then
money_str := '萬';
elsif k = 5 then
money_str := '仟';
elsif k = 6 then
money_str := '佰';
elsif k = 7 then
money_str := '拾';
elsif k = 8 then
money_str := '元';
elsif k = 9 then
money_str := '角';
elsif k = 10 then
money_str := '分';
end if;
k := k + 1;
m := i + 1;
val_j := nvl(substr(tmp_str, m, 1), '');
if len_j = m + 5 and substr(result, length(result), 1) = '0' then
result := substr(result, 0, length(result) - 1) || '萬0';
end if;
if len_j = m + 1 and substr(result, length(result), 1) = '0' then
result := substr(result, 0, length(result) - 1) || '元0';
end if;
if val_j = '0' and substr(result, length(result), 1) = '0' then
goto theend;
end if;
if substr(result, length(result), 1) != '0' then
result := result || money_str;
end if;
result := result || val_j;
<>
null;
end;
end loop;
--除去最後的0
for j in 1 .. 3 loop
begin
if substr(result, length(result), 1) = '0' then
result := substr(result, 0, length(result) - 1);
end if;
end;
end loop;
for i in 1 .. 10 loop
result := replace(result, num(i), num_str(i));
end loop;
return result;
end;
來自:http://jametong.itpub.net/category/5042/9386
如何實現人民幣的大寫轉換?
第乙個辦法,這個程式可以進行萬億以下的貨幣金額轉換 夠用的了吧 其中漢字與數字均按一位計 function atoc a as currency as string 定義兩個字串,a的值最多是兩位小數.dim string1 as string 如下定義.dim string2 as string ...
分享乙個用php寫的人民幣數字轉人民幣大寫的函式
時候我們需要在應用程式中使用隨機生成使用者名稱和密碼,這樣可以大大提高應用程式的安全,在php中生成隨機使用者名稱和密碼可以使用 mt rand 函式或者是 rand 函式,rand 函式在驗證碼中的應用多一些,而生成長字元的隨機碼一般都需要 mt rand 函式。使用php生成隨機數可以應用在許多...
人民幣公升值和貶值的影響
假設人民幣公升值前,1美元兌換10元人民幣,即1美元 10元人民幣。現在人民幣公升值後,1美元兌換7元人民幣,即1美元 7元人民幣。以前要人民幣10元才能換1美元,現在用人民幣7元就能換1美元,人民幣是不是公升值了。假設你準備用10萬人民幣出國學習或旅遊。公升值前可換1萬美元,即10萬 10 1萬。...