如何将缓冲区中的数据(字符串)保存到一个字符数组中

asdk77 2012-10-19 10:38:20
如何将缓冲区中的数据保存到一个字符数组中?我用zlib中的compress函数压缩字符串,调用该函数后,被压缩的后的串被保存在了一个声明的缓冲区中(buf)。请问如何将其读取并保存。

请高手指教!谢谢!
...全文
533 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
dragon000000 2012-11-23
  • 打赏
  • 举报
回复
memcpy比较好用
asdk77 2012-10-22
  • 打赏
  • 举报
回复
谢谢各位!
碎碎念 2012-10-19
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

压缩后的数据是乱码,在ubuntu终端中无法全部显示出来。如果我希望将其保存到一个file中(像txt文档类似)显示出来(乱码),应该如何做?用字符串存储,然后用“%s”方式输出吗(这样某些乱码显不出来)?
谢谢!
[/Quote]
要是知道压缩后字符串长度,可以用memcpy保存到一个字符串中,在创建一个文件,将该字符串写入文件...
要是不知道长度,可以想见缓冲区内存全部清0,然后就可以用strcpy了....
如影随从 2012-10-19
  • 打赏
  • 举报
回复
用memcpy,设置数据的长度就可以读取的。
asdk77 2012-10-19
  • 打赏
  • 举报
回复
压缩后的数据是乱码,在ubuntu终端中无法全部显示出来。如果我希望将其保存到一个file中(像txt文档类似)显示出来(乱码),应该如何做?用字符串存储,然后用“%s”方式输出吗(这样某些乱码显不出来)?
谢谢!
AndyZhang 2012-10-19
  • 打赏
  • 举报
回复
用memcpy吧
rocktyt 2012-10-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

用strcpy函数。
[/Quote]压缩后的数据不能保证没有'\0',应该用memcpy
ouyh12345 2012-10-19
  • 打赏
  • 举报
回复
或者memcpy
图灵狗 2012-10-19
  • 打赏
  • 举报
回复
用strcpy函数。
buyong 2012-10-19
  • 打赏
  • 举报
回复
乱码的原因可能是编码不统一,需要转码
[Quote=引用 5 楼 的回复:]

压缩后的数据是乱码,在ubuntu终端中无法全部显示出来。如果我希望将其保存到一个file中(像txt文档类似)显示出来(乱码),应该如何做?用字符串存储,然后用“%s”方式输出吗(这样某些乱码显不出来)?
谢谢!
[/Quote]

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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