前事不忘,后事之师,不忘国耻!

SAP SYBASE论坛中文社区技术服务

 找回密码
 站点注册

QQ登录

只需一步,快速开始

查看: 365|回复: 0
收起左侧

[参考资料] Powerbuilder-PB用于全角,半角互相转换的函数

[复制链接]
ehxz 发表于 2022-2-21 21:49:42 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?站点注册

x
PB2021全角转半角测试通过。

  1. /*
  2. *    Script Name:    Script - Full2Half(string in_str,integer iflag)
  3. *    Description:    用于全角,半角互相转换的函数
  4. *    Arguments:        string   strInfo //需要转换的字符串   
  5.                         int       iFlag //     1-全角-》半角 2-半角》全角   

  6. *    Returns:         string
  7. *    Author:            Date:    2009-02-26 09:08:58
  8. */
  9. String ls_rtn
  10. Char c[]
  11. long ll_length,ll_i
  12. If IsNull(in_str) Or in_str = "" Then Return ""


  13. ll_length = len(in_str)

  14. if iflag=1 then //1-全角-》半角

  15.     For ll_i = 1 To ll_length
  16.    
  17.     c[ll_i] = char(mid(in_str, ll_i, 1))
  18.       
  19.         If (Asc(c[ll_i]) = 12288)  Then
  20.       
  21.         c[ll_i] = Char(32)
  22.       
  23.         Continue
  24.       
  25.         End If
  26.       
  27.         If (Asc(c[ll_i]) > 65280  and Asc(c[ll_i]) < 65375) Then
  28.       
  29.         c[ll_i] = Char(Asc(c[ll_i]) - 65248)
  30.       
  31.         End If
  32.    
  33.     Next
  34. elseif iflag=2 then//2-半角》全角   


  35.     For ll_i = 1 To ll_length
  36.    
  37.         c[ll_i] = char(mid(in_str, ll_i, 1))
  38.       
  39.         If (Asc(c[ll_i]) = 32)  Then
  40.       
  41.         c[ll_i] = Char(12288)
  42.       
  43.         Continue
  44.       
  45.         End If
  46.       
  47.         If (Asc (c[ll_i]) < 127) Then
  48.       
  49.         c[ll_i] = Char(Asc(c[ll_i]) + 65248)
  50.       
  51.         End If
  52.       
  53.     Next
  54. end if
  55. ls_rtn = c

  56. Return ls_rtn

复制代码

你不共享给别人,谁会共享给你?
SYBASE论坛欢迎您能交换更多好的信息,资料,代码……
富强,民主,文明,和谐;自由,平等,公正,法治;爱国,敬业,诚信,友善!
SYBASEBBS - 免责申明1、欢迎访问“SYBASEBBS.COM”,本文内容及相关资源来源于网络,版权归版权方所有!本站原创内容版权归本站所有,请勿转载!
2、本文内容仅代表作者观点,不代表本站立场,作者自负,本站资源仅供学习研究,请勿非法使用,否则后果自负!请下载后24小时内删除!
3、本文内容,包括但不限于源码、文字、图片等,仅供参考。本站不对其安全性,正确性等作出保证。但本站会尽量审核会员发表的内容。
4、如本帖侵犯到任何版权问题,请立即告知本站 ,本站将及时删除并致以最深的歉意!客服邮箱:admin@sybasebbs.com
您需要登录后才可以回帖 登录 | 站点注册

本版积分规则

QQ|Archiver|SYBASE论坛中文社区 ( 鲁ICP备2021027222号-1 )

GMT+8, 2022-5-24 05:05 , Processed in 0.034620 second(s), 8 queries , MemCached On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表