字节
-
Golang json数据序列化与反序列化实践



Go通过encoding/json包实现JSON序列化与反序列化,使用结构体标签如json:”name”控制字段映射,omitempty在值为空时忽略字段,json:”-“排除字段;通过json.Marshal将结构体转为JSON字符串,json.Un…
-
Java怎样实现数据加密?MD5/SHA算法
如何用java实现md5和sha算法?一、使用messagedigest类获取md5实例,将字符串转为字节数组,调用digest()方法计算哈希值,并转换为十六进制字符串;二、实现sha-256时,仅需将算法名称改为”sha-256″,其余步骤与md5一致;三、实际应用中应加…
-
美观打印字节数组和字符数组的Go语言教程



本文介绍了如何在Go语言中优雅地打印字节数组和字符数组,并展示了如何利用Stringer接口自定义类型的字符串表示形式,避免使用反射,提升代码效率和可读性。通过实现Stringer接口,我们可以轻松地控制结构体和数组的打印格式,使得输出更加清晰易懂。 在Go语言中,自定义类型的字符串表示形式对于调试…
-
使用 Go 语言计算文件的 SHA256 校验和



本文将指导你如何使用 Go 语言计算文件的 SHA256 校验和。流式处理是关键,它允许我们处理任意大小的文件,而无需将整个文件加载到内存中。这对于验证大型下载文件(例如 Fedora 镜像)的完整性至关重要。 使用 crypto/sha256 包进行 SHA256 计算 Go 语言的标准库 cry…
-
将十六进制字符串转换为字节切片:Go 语言实现指南



本文介绍了如何使用 Go 语言将包含十六进制转义字符的字符串转换为字节切片。通过正则表达式匹配并解析十六进制值,最终得到对应的字节数组。文章提供详细的代码示例,并解释了实现过程中的关键步骤,帮助开发者理解和应用该方法。 在处理数据时,我们经常会遇到需要将包含十六进制转义字符的字符串(例如 x�K�2…
-
Go语言处理JSON中动态键值结构的策略与实践



本教程深入探讨在Go语言中如何高效解析包含动态键(如可变尺寸的图片URL集合)的JSON数据。针对JSON中键名不固定的场景,我们将介绍如何巧妙利用Go的map类型与struct结合,实现灵活且强大的数据反序列化,确保json.Unmarshal的顺畅使用,从而应对复杂多变的JSON结构。 理解JS…
-
mysql 函数之Cast函数和操作符
binary binary操作符将后面的字符串抛给一个二进制字符串。这是一种简单的方式来促使逐字节而不是逐字符的进行列比较。这使得比较区分大小写,即使该列不被定义为 binary或 BLOB。binary也会产生结尾空白,从而更加显眼。 mysql> SELECT ‘a’ = ‘A’;->…
-
Go语言:深入理解int到rune的类型转换与类型断言



本文详细阐述了在Go语言中如何将表示Unicode码点的int类型安全地转换为rune类型,并通过具体示例代码,清晰区分了类型转换(Type Casting)和类型断言(Type Assertion)这两种不同的机制及其适用场景与检查时机。 1. int到rune的直接转换 在go语言中,将一个整数…
-
Mysql数据格式
varchar 对每个英文(ascii)字符都占用2个字节,对一个汉字也只占用两个字节char 对英文(ascii)字符占用1个字节,对一个汉字占用2个字节varchar 的类型不以空格填满,比如varchar(100),但它的值只是”qian”,则它的值就是”q…
-
Go TCP 连接超时处理与 CLOSE_WAIT 状态解析



本文深入探讨 Go 语言中 TCP 连接的读超时机制,详细阐述如何正确使用 net.Conn.SetReadDeadline 来避免连接无限阻塞,并分析了 SetReadDeadline(time.Now()) 的误区。同时,文章还对 TCP CLOSE_WAIT 状态进行了解析,帮助开发者理解其产…