CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

怎么把字符数组的内容转换到CString中?

楼主iamring(123)2005-04-04 19:44:38 在 VC/MFC / 基础类 提问

BYTE   tempbuf[128];  
  memset(tempbuf,   0,   128);  
  CString   strEncrypt;  
   
  Read   =   OutputFile.Read(tempbuf,   128);  
  strEncrypt   =   tempbuf;  
   
  为什么strEncrypt里面只有开头的几个字符?  
  tempbuf里面有128个字符的,   但是其中可能夹杂着"\0"符号,   于是strEncrypt就中断了?  
  我想把所有128个字符都付值给一个字符串,   该怎么办呢?  
   
  谢谢  
  问题点数:0、回复次数:7Top

1 楼steedhorse(晨星)回复于 2005-04-04 20:14:51 得分 0

不方便的,一个CString只允许有一个字符串结束符。Top

2 楼steedhorse(晨星)回复于 2005-04-04 20:15:20 得分 0

你的文件是不是并非文本文件啊?  
  那样的话,你要转换的,按照你的意图。Top

3 楼oyljerry(【勇敢的心】→ ㊣提拉米苏√㊣)回复于 2005-04-04 21:43:41 得分 0

CStirng以\0结束了Top

4 楼xuzheng318(忧郁王子)回复于 2005-04-04 21:44:58 得分 0

字符串结束符Top

5 楼favors(favors)回复于 2005-04-04 22:17:47 得分 0

CString   str;  
  str.format("%s",tempbuf);Top

6 楼kugou123(酷狗)(彪悍的人生,不需要解释 www.xiaozhou.net)回复于 2005-04-04 22:55:04 得分 0

str.Format("%s",buff);Top

7 楼xqk(夏乾坤)回复于 2005-04-05 08:17:14 得分 0

有办法其实,虽然字符串实际上内容齐全,但是你对字符串的操作就类似数组了,因为字符串中间的\0标识着字符串已经结束了,所以这样做简直一点用处都没有,除非先把buff里的\0全换成某一符号代替  
   
  BYTE   tempbuf[128];  
  memset(tempbuf,   0,   128);  
  CString   strEncrypt;  
   
  Read   =   OutputFile.Read(tempbuf,   128);  
  strEncrypt   =   tempbuf;  
  memcpy(strEncrypt.GetBuffer(strEncrypt.GetLength()),tempbuf,128);         //例1  
   
  for(int   i=0;i<128;i++)  
  {  
          if('\0'   ==   tempbuf[i]   ||   0x00   ==   tempbuf[i])tempbuf[i]   =   '   '     //例2,以空格取代,然后算法自己研究吧先,呵呵  
  }  
  Top

相关问题

  • 怎样实现字符串从CSTRING类到数组及char *的转换?
  • 求救 C中的字符数组的内容 如何转换成CString 类型
  • 字符串数组转换的问题!
  • 字符串转换成数组
  • 把数组转换为字符串!急!!
  • 如何直接把字符数组转换为字符串(ansistring)?
  • 请教字符数组转换成字符串
  • 请教如何将BYTE类型的数组转换成CString的字符串,多谢!
  • 数组问题:如何将二维字符数组转换成一维字符串数组
  • 如何把一个16进制的数组转换成字符数组?

关键词

  • 字符
  • tempbuf
  • strencrypt
  • 字符串
  • cstring
  • read
  • str

得分解答快速导航

  • 帖主:iamring

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

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