您的位置:首页 >> 数据库 >> PowerBuilder >> 正文
RSS
 

在PB中实现数字的英文大写和中文大写

http://www.rdxx.com 05年08月07日 21:03 编程爱好者网站 我要投稿

关键词: 中文 , 数字 , 大写
无锡市房产管理局产权监理处 陆建新

---- PowerBuilder是当前得到广泛应用的C/S数据库前端开发工具, 在使用PB的过程中,经常遇到要将数字进行英文或中文的大写转换,尤其是在处理金额的时候,本文整理了我在实践中用到的转换方法,提供给大家参考。

---- 一、 英文大写转换

---- 以下是进行英文大写转换的函数内容,函数名为dtoe:

//****** 阿拉伯数--- >英文数 ******
string aa,bb,T1,T2,T3,B,W,CC,a1
decimal a=0,c=0,a2
INTEGER V,M

aa="ONE      TWO      THREE    FOUR     
FIVE     SIX      SEVEN    "+&
   "EIGHT    NINE     TEN      ELEVEN   TWELVE
    THIRTEEN FOURTEEN FIFTEEN  "+&
   "SIXTEEN  SEVENTEENEIGHTEEN NINETEEN "
bb="TWENTY THIRTY FORTY  FIFTY  SIXTY  SEVENTYEIGHTY NINETY "

//**** 进入时 --- > t
T=round(t,2)
T1=STRING(T)
DO WHILE POS(T1,",")< >0
  V=POS(T1,",")
  T1=MID(T1,1,V - 1)+MID(T1,V+1)
LOOP
T2=" "
T3=T1
IF POS(T3,".")< >0 THEN
  V=POS(T3,".")
  T1=MID(T3,1,V - 1)
  T2=MID(T3,V+1)
END IF
T1=SPACE(10 - LEN(T1))+T1
CC=T1
B=" "
W=" "
M=9
//*** 整数处理 ***
do while m >0
  if MID(cc,m+1,1)=" " then
    exit
  end if
  if INTEGER(MID(cc,m - 1,3))< >0 then
    if m=6 then
      W=" THOUSAND "+w
    else
      if m=3 then
        W=" MILLION "+w
      end if
    end if
    A=INTEGER(MID(cc,m,2))
//***  小于 100 的数  ***
    if a< >0 then
      if a< 20 then
        B=RIGHTtrim(MID(aa,(a - 1)*9+1,9))
9 7 3 1 2 3 4 8 :

 
 
标签: 中文 , 数字 , 大写 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站