当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 新建好一个data profile,里面有连接数据库的设置...能否在pb6.5内自动生成那个ini文件?然后我直接在application.open()内连接? 谢谢..(我以前都是手工做的,用notepad做ini,太慢了) ......
    摘要: rt! ......


UNICODE 汉字的问题

我用MultiByteToWideChar方法解决没成功  
  怎么解决汉字的问题啊,比如我用下面的  
  BYTE   byte[]={0x4f,0x53,0xae,0x8b,0xca,0x53,0x0b,0x7a,0x8f,0x5e,0xbe,0x8b,0x00,0x00};  
  怎样在对话框中显示汉字,望大虾赐教

NO.1   作者: loopyifly

/*  
  WORD   CICPDlg::Code   (char   data[],int   len)  
  data:字符数组  
  len:data长度  
  1.将按ascii编码的数组转换成unicode编码的数组  
  2.返回转换后data数组所占字节数*/  
  WORD   CFlashtestDlg::Code   (char*   data,   int   len)  
  {  
  int   maxLen   =   len*2;  
  int   wcount   =   0;  
  unsigned   short   *   buf   =   (unsigned   short   *)malloc(maxLen);    
  memset(buf   ,   0   ,   maxLen   );    
  //   transfer    
  wcount   =   MultiByteToWideChar(936,MB_PRECOMPOSED,data,len,buf,maxLen);  
  //   Reverse    
  for   (int   i=0;i<   wcount   ;i++   )  
  Reverse(   (char*)buf+2*i   ,   2   );  
  memcpy(   data   ,   buf   ,   2*wcount   );  
  free(   buf   );    
  return   2*wcount;  
  }  
   
  凋用后data中的数据就已经转换成功

NO.2   作者: KcSoft

转贴:  
   
  int   OleDBCom::UnicodeToChar(char   *UnicodeText,   char   *ASCText,   unsigned   char   UnicodeLength)  
  {  
  wchar_t   UnicodeWCH[100];  
  int   MultiLength   =   0;  
  int   WideLength   =   0;  
  unsigned   char   SMLength   =   0;  
   
  while(MultiLength   <   UnicodeLength)  
  {  
  UnicodeWCH[WideLength++]   =   ((unsigned   char   )UnicodeText[MultiLength]   <<   8)    
  +   (unsigned   char)UnicodeText[MultiLength+1];  
  MultiLength   +=   2;  
  }  
  UnicodeWCH[WideLength]   =   0;  
   
  SMLength   =   WideCharToMultiByte(CP_ACP,   0,   (LPWSTR)UnicodeWCH,   WideLength,    
  (LPSTR)ASCText,   161,   NULL,   NULL);  
   
  return   SMLength;  
  }  
   
 


    摘要: 看了好多材料!但讲得都很少,都是一笔带过!更没有教师用方法! 我想用“request”和“session”共享bean! 具体要写那些代码? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE