汉字,字节。快快快!!

aleg 2002-03-30 03:06:27
如果一行汉字,读入时是从头一个汉字一个汉字的读入的。并且每个汉字分两个字节读入,如何才能在程序里得到汉字。就是怎么对一个汉字分成两个字节读入时,对这两个字节怎么处理才能得到汉字!!!!
...全文
134 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
aleg 2002-04-02
  • 打赏
  • 举报
回复
多谢大家的关照,我已经完成了呢!!!现在就给你们加分。
yaohongwen 2002-03-31
  • 打赏
  • 举报
回复
看看汉字编码原理吧
leonpard 2002-03-31
  • 打赏
  • 举报
回复
AnsiString 有个方法叫IsLeadByte不知道有没有帮助,你
可以查看一下。
aleg 2002-03-31
  • 打赏
  • 举报
回复
WideString这个是把汉字当一个字节处理的啊,我也知道的。但是根据我现在程序的情况是不能用WideString啊
mikesome 2002-03-31
  • 打赏
  • 举报
回复
WideString
看帮助
aleg 2002-03-31
  • 打赏
  • 举报
回复
可能是小弟表达的不够清楚,而使各位不能完全理解小弟的意思。其实是这样的,就是form上的一个edit上面输入一行汉字,但是对汉字的处理有只能是一个个汉字来,而且每个汉字分两个字节取。小弟想知道的就是如何将这两个字节处理,在程序里就可以得到和外面读入的是一样的汉字。
cdws222 2002-03-30
  • 打赏
  • 举报
回复
汉字的第一个字节的码值小于0(我在DOS下是这么做的)
webtt 2002-03-30
  • 打赏
  • 举报
回复
曾经在DOS下做过,汉字库是UCDOS的,那是首先得到汉字的编码,然后从UCDOS提供的汉字库里根据公式计算汉字的位置,然后得到汉字字模,一个点一个点与出来的。那当然实在无中文状态下,在中文winxxx里我想,你只需要挨着输出就行了,我可能还不太明白你的问题。
我不懂电脑 2002-03-30
  • 打赏
  • 举报
回复
AnsiString中有判断双字节的方法。
aleg 2002-03-30
  • 打赏
  • 举报
回复
也很感谢你了,至少也给我点建议!!
高手们,有没有人可以帮我解决这个问题呀!!!
fiveyes 2002-03-30
  • 打赏
  • 举报
回复
开始->程序->Borland C++Builder5->Help->Visual Component Library Reference->Categorical Routines Listing->Mbcs utilities,其中有你需要的函数,例如,ByteType可返回某一个字节的类型:它是一个单字节字符呢,还是一个多字节字符的第一个字节呢,还是一个多字节字符的第二个字节呢,使用起来很简单的。
这个方法仅能判断该不该把两个字节合成一个双字节字符来处理,却不能知道那个双字节字符是不是汉字,因为还有许多符号也是双字节的,如果你真的需要那样,可能还得在CSDN搜索一番。
我为什么不作出回答?因为我不会。:)
aleg 2002-03-30
  • 打赏
  • 举报
回复
两个字节怎么样相加才可以得到一个汉字呢???
greatefish 2002-03-30
  • 打赏
  • 举报
回复
1:不管是GB还是BIG5,它都是用两个字节来保存一个汉字
2:一个汉字的两个字节中,第一个字节的字符>127,第二个
字节就不一定了
3:例如:

char cStr[81]="abc123你好123abc";
for(int i=0;i<strlen(cStr);i+=2)//注意,i+=2
{
if(cStr[i]>127)//第i与i+1这两个字节是一个汉字
{
do something
}
}

13,874

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧