采用eredis,访问redis,如果键值有空格的话,需要采用类似:eredis_r_cmd(reader, "hgetall %s", name);
name字符串中包含空格
int eredis_get_data(char *name)
{
int err = 0;
eredis_t *e = eredis_new();
err = eredis_host_add(e, REDIS_IP_ADDRESS, REDIS_PORT);
if (err == EREDIS_OK) {
eredis_reader_t *reader = eredis_r(e);
eredis_reply_t *reply;
char szCommand[BUFFER_LEN_256] = { 0 };
#if 0 /* failed */
strcpy(szCommand, "hgetall \"");
strcat(szCommand, ca_name);
strcat(szCommand, "\"");
eredis_r_cmd(reader, szCommand);
#endif
reply = eredis_r_cmd(reader, "hgetall %s", name);
if (reply)
......
}else {
err = EREDIS_ERR;
}
if (reader) {
eredis_r_clear(reader);
eredis_r_release(reader);
}
if (reply)
eredis_free(e);
} else
printf("eredis_host_add err = [%d]\n", err);
return err;
}