Go教程技术文章
-
Go 的 fs.FormatDirEntry 可以把 DirEntry 转成适合人阅读的短文本。本文从目录读取、遍历输出和边界判断说明它与 FileInfo 格式化的区别。481 收藏 -
Go slices.Chunk 会把切片按最多 n 个元素分成连续子切片,最后一组不足 n 个时会原样保留,不会补零或丢弃。本文说明尾组、空输入、非法 n 与子切片容量的处理边界。431 收藏 -
Go bytes.Runes 会把 UTF-8 字节切片解释为 Unicode 符文并返回 []rune。本文从基础转换、长度单位、非法 UTF-8 和字符边界几个方面说明如何安全使用。392 收藏 -
Go bytes.Cut 会围绕首个分隔符返回 before、after 和 found 三个结果。本文用请求头、键值文本等场景说明未命中时的返回边界,以及返回切片与原始字节存储共享时何时需要 bytes.Clone。210 收藏 -
Go 标准库 encoding/ascii85 可以把 ASCII85 文本还原为字节数据。本文从包装标记、Decode 返回值、NewDecoder 流式读取和异常输入四个方面说明怎样安全完成解码。225 收藏 -
Go strings.FieldsSeq 返回按 Unicode 空白分隔的字符串迭代器。本文用最小示例说明怎样逐个读取字段、提前停止和处理空输入,并解释它与 strings.Fields 的版本与内存边界。486 收藏 -
Go strings.Fields 会把连续的 Unicode 空白视为一个分隔边界,丢弃首尾空白并返回非空字段。本文用原创示例说明空输入、制表符、换行和 strings.Split 的选择边界。249 收藏 -
讲清 Go http.Request.WriteProxy 与 Request.Write 的格式差异,演示如何生成带绝对 URI 的代理请求,并说明 URL、Host、writer 和代理连接之间的职责边界。184 收藏 -
Go crypto/ecdh PrivateKey.Bytes 返回的是原始私钥编码副本,不是 PEM 或 PKCS#8 容器。本文用同曲线回读示例说明导出、校验、存储和敏感字节生命周期的边界。151 收藏 -
Golang · Go教程 | 2星期前 | 标准库 · 性能优化 · url · Go教程 · Go net/url []byte URL.String URL.AppendBinary URL.MarshalBinary
Go net/url 的 URL.AppendBinary 可以把 URL 文本追加到已有 []byte,并把返回切片交给后续协议或日志写入。本文说明正确接住返回值、处理错误、复制长期数据,以及它和 URL.String、MarshalBinary 的选择边界。388 收藏 -
使用 Go 的 exec.Cmd.StdinPipe 向子进程提供标准输入时,关键不是只拿到一个 io.WriteCloser,而是明确 Start、Write、Close、Wait 的生命周期。本文用一个可迁移的写法说明如何让 EOF 正确到达,并区分输入写入错误、启动错误和命令退出错误。157 收藏 -
Go reflect.Value.SetIterKey 用于把 MapRange 当前条目的键写入可设置的 Value。本文说明 MapIter.Next、键类型可赋值、CanSet 与迭代器状态边界,并对比 Set(iter.Key()) 的使用方式。389 收藏 -
讲清 Go crypto/mldsa.PublicKey.Bytes 如何导出可分发的 ML-DSA 公钥编码,怎样携带参数集并用 NewPublicKey 恢复对象,以及如何提前判断长度和参数错配。152 收藏 -
Go encoding/json/v2 默认把 nil map 编码为空 JSON 对象。本文说明怎样用 FormatNilMapAsNull 恢复 null 语义,并给出字段级覆盖与迁移回归清单。369 收藏 -
Go 的 os.File.Chdir 可以把已经打开的目录句柄设为当前工作目录,适合需要复用目录句柄的场景。本文从一次相对路径读取失败的排查开始,说明打开、切换、恢复、关闭和并发边界。482 收藏