Go教程技术文章
-
用 Cobra 的 MarkFlagsRequiredTogether 约束 username 和 password 成对出现,并说明 flag 定义位置、RunE 执行边界和常见配置误区。284 收藏 -
Go io.TeeReader 会把通过它读取到的字节同步写入另一个 Writer。本文用一个计数 Writer 统计流经 Reader 的字节数,并说明无内部缓冲、写入错误传播、EOF 与部分读取等边界,适合上传进度、摘要计算和流式审计场景。413 收藏 -
Golang · Go教程 | 1星期前 | 日志 · 标准库 · go · 工程实践 · Go 结构化日志 JSON日志 log/slog HandlerOptions slog.NewJSONHandler
Go slog.NewJSONHandler 会把每次日志调用编码成一行 JSON 对象,适合交给日志采集系统按字段检索。本文从输出 Writer、HandlerOptions、字段契约和生产边界出发,说明如何配置日志级别、来源信息与字段脱敏,并避免把结构化日志退化成字符串拼接。440 收藏 -
解释 Go bufio.Writer.AvailableBuffer 返回切片的有效期,说明 append 后立即 Write 的正确用法、下一次写操作的失效边界,以及容量不足和 Flush 错误的处理方式。171 收藏 -
使用 Go transform.NewReader 配合 GBK Decoder 将旧编码文本转换为 UTF-8。本文澄清包路径,给出有界读取示例,并说明编码来源、解码错误、输入输出上限与业务内容边界。122 收藏 -
Go 的 x509.CertPool.AppendCertsFromPEM 用于把 PEM 编码的证书追加到信任池。本文说明单个证书、证书链、系统根证书合并和 TLS 使用时的判断边界。193 收藏 -
说明 Go archive/zip.FileHeader.SetModTime 的使用方式、UTC 转换、MS-DOS 时间精度和 Modified 字段迁移边界。443 收藏 -
Go text/template 默认允许 map 缺键继续执行,容易把数据问题变成空白或。本文用 Template.Option("missingkey=error") 让缺字段在 Execute 阶段返回错误,并对比 default、zero、error 的边界。 101 收藏 -
Go regexp.Expand 使用匹配索引从原文取出捕获组,并按模板追加到字节切片。本文通过资源标签示例说明变量边界、返回值、缺失组和批量展开的注意事项。443 收藏 -
Go math.Nextafter32 返回 float32 朝目标方向的下一个可表示值。本文用最小示例说明方向语义,并梳理相等输入、零值、NaN 与极值附近的边界,帮助区分邻接值操作和误差容忍判断。260 收藏 -
Golang · Go教程 | 1星期前 | Go教程 · database/sql · database/sql Go数据库 Rows.ColumnTypes ColumnType.Nullable
Go database/sql 的 ColumnType.Nullable 返回可空值和信息是否可靠两个结果。本文说明怎样通过 Rows.ColumnTypes 读取列可空性,并正确处理驱动不支持和未知状态。253 收藏 -
用 Go encoding/base64.WithPadding 为协议设置自定义填充字符,区分标准填充、NoPadding 与非法参数,并说明编解码双方如何保持同一约定。343 收藏 -
Go gzip.Reader.Reset 会丢弃 Reader 的当前状态,并把它重新绑定到新的 gzip 输入。本文用批量解压示例说明 Reset 的调用顺序、错误处理、EOF 与 Close 的边界,以及什么时候复用才有价值。145 收藏 -
Go tar.Reader.Next 负责切换 tar 归档条目并返回 Header,当前 Reader 随后提供该条目的数据。本文说明 Next、Read、io.EOF 的边界,以及路径、类型和大小控制,帮助你安全遍历归档文件。308 收藏 -
Go xml.Decoder.Strict 默认严格解析 XML。本文说明关闭 Strict 后能兼容哪些常见错误,如何配合 AutoClose 和 Entity 使用,以及为什么字符集、结构和业务字段错误仍要单独处理。334 收藏