CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VB >  基础类

内码转换(Shift-JIS -> GBK)中遇到的问题, 有经验的大师请看过来

楼主smoked(眼前一黑)2006-03-10 01:43:01 在 VB / 基础类 提问

Function   SJisToGBK(sSJis   As   String)   As   String  
          Dim   iLen   As   Integer  
          Dim   sUnicode   As   String  
          Dim   sGbt   As   String  
          Dim   sGbs   As   String  
           
          iLen   =   LenB(sSJis)  
          sUnicode   =   Space(iLen   +   1)  
           
          MultiByteToWideChar   932,   0,   sSJis,   -1,   sUnicode,   iLen  
           
          iLen   =   LenB(sUnicode)  
          sGbt   =   Space(iLen   +   1)  
          sGbs   =   Space(iLen   +   1)  
          WideCharToMultiByte   936,   0,   sUnicode,   -1,   sGbt,   iLen,   vbNullString,   0  
           
          iLen   =   LenB(sGbt)  
          LCMapString   &H804,   &H2000000,   sGbt,   iLen,   sGbs,   iLen  
           
          SJisToGBK   =   sGbs  
  End   Function  
   
   
  是由网上搜来的一个   BIG5   ->   GBK   的函数改的,   不过其中一些参数没弄得很明白,   只好照抄.  
   
  试了一下,   发现一些问题,   一是片假名无法转换,   二是部分汉字的转换会出现异常,   返回值里有一大堆问号.  
   
  请大家指点一下,   非常感谢.  
  问题点数:100、回复次数:3Top

1 楼mndsoft(枕善居(http://www.mndsoft.com/)回复于 2006-03-10 08:27:46 得分 10

顶一下。Top

2 楼jiangsheng(蒋晟.Net[MVP])回复于 2006-03-10 09:29:04 得分 45

DECLARE   FUNCTION   ConvertINetString   _  
      LIB   "MLANG.DLL"   _  
      ALIAS   "ConvertINetString"   (   _  
      BYREF   lpdwMode   AS   DWORD,   _  
      BYVAL   dwSrcEncoding   AS   DWORD,   _  
      BYVAL   dwDstEncoding   AS   DWORD,   _  
      BYREF   lpSrcStr   AS   ANY,   _  
      BYREF   lpnSrcSize   AS   LONG,   _  
      BYREF   lpDstStr   AS   ANY,   _  
      BYREF   lpnDstSize   AS   LONG   _  
  )   AS   LONGTop

3 楼rainstormmaster(暴风雨 v2.0)回复于 2006-03-10 10:37:47 得分 45

可以尝试使用ConvertINetUnicodeToMultiByte、ConvertINetMultiByteToUnicodeTop

相关问题

  • 在Java中怎样实现GBK内码到Unicode的转换
  • 恼人的汉字内码转换的问题 (GBK -> UTF-8)
  • 内码转换
  • 内码转换
  • 有谁知道如何在VC中得到特殊字符的GBK内码值???快来拿分?
  • 请问如何判断一个字串内容属于什么字符内码?(ISO8859-1 ? 还是GBK ? 还是gb2312
  • 散分!! 请告诉我怎么判断一个文本文件的汉字内码是GB码、BIG5码,还是GBK码
  • 关于汉字字符集, 请大家帮我厘清这几个概念:“内码”、“区位码”、“外码”、“UniCode”、“GBK码”、“GB2312码”、“UTF-8”等等。
  • 奇怪的汉字内码???
  • 内码转换很简单

关键词

  • ilen
  • sgbt
  • sunicode
  • ssjis
  • sgbs
  • byref
  • lenb
  • space
  • dim
  • dword

得分解答快速导航

  • 帖主:smoked
  • mndsoft
  • jiangsheng
  • rainstormmaster

相关链接

  • Visual Basic类图书
  • Visual Basic类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo