DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

reids在通过字符串保存压缩文件时有时会遇到/0的字符,从而导致文件保存不完整
例如:

redisCommand(c,"set %d %s",frag_seq,redis_value);

 

  • 1

在这里插入图片描述
这里的rev.zip含有许多/0
可以通过存取二进制串的 方式来保存,防止/0截断字符串
hiredis提供了%b,作为格式化二进制的方法,二进制数据需要提供起始地址和长度。因为二进制没有像str一样用/0结束符,需要长度的参数。

redisCommand(c,"set %d %b",frag_seq,redis_value,last_len);
 
posted on 2022-09-09 17:39  DoubleLi  阅读(128)  评论(0)    收藏  举报