在 go 中,字符串\x00 想转成有转义意义的字符串,可以吗

2018-02-27 20:13:36 +08:00
 liangmishi
1894 次点击
所在节点    Go 编程语言
9 条回复
ahmcscx
2018-02-27 20:17:35 +08:00
这应该是 16 进制的 ascii 吧
liangmishi
2018-02-27 20:18:42 +08:00
@ahmcscx 对的,想转成 ascii,但是一直输出\x00
nyanyh
2018-02-27 20:26:32 +08:00
@liangmishi \x00 的 ASCII 是 null,怎么显示……
liangmishi
2018-02-27 20:28:33 +08:00
@nyanyh 是的,就是空的,但是我这里输出了\x00 这个字符串。
我从一个文件里读到一个字符串\x00 想转成 null 转不了
liangmishi
2018-02-27 20:28:55 +08:00
@liangmishi 所以在这里请教下诸位大佬
misaka19000
2018-02-27 21:42:29 +08:00
应该是你的 terminal 的原因
gamexg
2018-02-27 21:42:35 +08:00
package main

import "fmt"

func main() {

fmt.Printf("%#v", "\000")
fmt.Printf("%v", "\000")
fmt.Print("\000")
}


难道用的 %#v ?
后两个都是正常的。
jsfaint
2018-02-28 13:49:00 +08:00
用 encoding/hex 转成 hex string ?
liangmishi
2018-03-01 00:39:52 +08:00
@gamexg 准确来说, 是\\00 怎么通过程序转成 \0

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/433267

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX