go语言:字符串转二进制并写入文件
在数据存储场景中,经常需要将字符串转换为二进制格式保存到文件中,例如redis的rdb文件。本文演示如何使用go语言将字符串“redis”转换为二进制并写入文件,并在vim中使用%!xxd命令查看其十六进制表示。
无需借助binary包,go语言可以直接将字符串写入文件,实现二进制存储。 在终端执行echo 'redis' | hexdump,可以看到“redis”的十六进制表示为52 45 44 49 53 0a。 0a是换行符,实际字符串内容为52 45 44 49 53。
以下go代码将字符串“redis”写入文件:
package main import ( "fmt" "io" "log" "os" ) func main() { file, err := os.openfile("xxx.txt", os.o_wronly|os.o_create|os.o_trunc, 0644) // 使用 o_create 和 o_trunc 创建并清空文件 if err != nil { log.fatal(err) } defer file.close() n, err := io.writestring(file, "redis") if err != nil { log.fatal(err) } fmt.printf("写入 %d 个字节\n", n) }
运行后,使用cat xxx.txt | hexdump查看文件内容的十六进制表示,结果将是52 45 44 49 53,与预期一致。 这证明直接将字符串写入文件即可实现字符串到二进制文件的转换。 注意,代码中使用了os.o_trunc来确保每次运行都覆盖之前的文件内容。
以上就是如何使用go语言将字符串转换为二进制并写入文件?的详细内容,更多请关注代码网其它相关文章!
发表评论