本文整理汇总了Golang中redis.Client.Lindex方法的典型用法代码示例。如果您正苦于以下问题:Golang Client.Lindex方法的具体用法?Golang Client.Lindex怎么用?Golang Client.Lindex使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类redis.Client
的用法示例。
在下文中一共展示了Client.Lindex方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: dump_db
func dump_db(port int, db int, output io.Writer) {
var client redis.Client
if port != 0 {
client.Addr = "127.0.0.1:" + strconv.Itoa(port)
}
if db != 0 {
client.Db = db
}
fmt.Fprintf(output, "FLUSHDB\r\n")
keys, err := client.Keys("*")
if err != nil {
println("Redis-dump failed", err.Error())
return
}
for _, key := range keys {
typ, _ := client.Type(key)
if typ == "string" {
data, _ := client.Get(key)
fmt.Fprintf(output, "SET %s %d\r\n%s\r\n", key, len(data), data)
} else if typ == "list" {
llen, _ := client.Llen(key)
for i := 0; i < llen; i++ {
data, _ := client.Lindex(key, i)
fmt.Fprintf(output, "RPUSH %s %d\r\n%s\r\n", key, len(data), data)
}
} else if typ == "set" {
members, _ := client.Smembers(key)
for _, data := range members {
fmt.Fprintf(output, "SADD %s %d\r\n%s\r\n", key, len(data), data)
}
}
}
}