String 如何使用缩进打印hextump
Dump[]字节{1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0} 它表明:String 如何使用缩进打印hextump,string,go,hexdump,String,Go,Hexdump,Dump[]字节{1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0} 它表明: 00000000 01 02 03 04 05 06 07 08 09 00 01 02 03 04 05 06 |................| 00000010 07 08 09 00 |....| 如何在所有行的十六进制地址前添加缩进?像 00000000 01 02 03 04 0
00000000 01 02 03 04 05 06 07 08 09 00 01 02 03 04 05 06 |................|
00000010 07 08 09 00 |....|
如何在所有行的十六进制地址前添加缩进?像
00000000 01 02 03 04 05 06 07 08 09 00 01 02 03 04 05 06 |................|
00000010 07 08 09 00 |....|
将行拆分\n然后在每行之前放置一个缩进,但是是否有任何内置工具可以这样做?我尝试了hex.Dumper和tabwriter.NewWriter,但它们只是将缩进视为正常数据,并与hex转储一起打印。返回格式化字符串。如果您想将其格式设置为每行缩进,请将所有换行符替换为换行+缩进,例如制表符。加上将缩进前置到它的开头,这样第一行也将缩进,而不在换行符之前 如需更换,请使用 请参见此示例:
s := hex.Dump([]byte{1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0})
fmt.Println(s)
s = "\t" + strings.ReplaceAll(s, "\n", "\n\t")
fmt.Println(s)
请在以下服务器上尝试输出:
您可能需要在每行之前添加制表符或其他缩进字符。你尝试过什么?但是有没有内置的工具可以做到这一点不完全是这样。但是您可以使用bytes.Split和bytes.Join的组合。
00000000 01 02 03 04 05 06 07 08 09 00 01 02 03 04 05 06 |................|
00000010 07 08 09 00 01 02 03 04 05 06 07 08 09 00 01 02 |................|
00000020 03 04 05 06 07 08 09 00 |........|
00000000 01 02 03 04 05 06 07 08 09 00 01 02 03 04 05 06 |................|
00000010 07 08 09 00 01 02 03 04 05 06 07 08 09 00 01 02 |................|
00000020 03 04 05 06 07 08 09 00 |........|