当前位置: 首页 > news >正文

本人自定义的GO包说明【实用,建议收藏】

项目地址:https://gitee.com/zht639/my_gopkg

自定义的golang包包含许多实用和方便的功能,以下是使用说明和包的介绍。注意:包会更新,只介绍截止目前的包,具体看上方链接

一、使用说明

1.本地调用

打开项目根目录,在该目录下打开命令行,然后按如下步骤操作。

(1)初始化本地mod(有则跳过此步)

go mod init 你的模块名

(2)下载到本地(若之前就下载过,请忽略此步,转至第四步)

go get gitee.com/zht639/my_gopkg

(3)在go文件中导包即可

import "你的模块名/我的包名"

(4)若之前就下载过我的包,则需要打开mod,删除require语句,再执行如下指令

go mod tidy

2.单元测试

每个包下都有测试文件,每个测试文件都会测试多个函数,读者可在包目录下执行如下命令,一键测试所有函数:

go test ./...

若要测试其中一个,命令是:

go test -run 函数名 ./包名

当然,这样做比较麻烦,IDE对于测试文件一般都有启动按钮,点击即可逐个启动函数。

二、包的介绍

1.strtrans

用于字符串和基本类型的相互转换,ToString()可将任意基本类型转为字符串,包括单个ASCII字符和非ASCII字符(如汉字)的转换。ToInt(),ToFloat(),ToBool()可将任意合法的字符串转为基本类型。注意,ToString()不处理float32,而是由Float32ToStr()处理,但存储小数建议用float64,不会出错。

2.rwtxt

批量读取多个txt文件的内容到内存,或批量保存内存变量到一个txt,适用于基于命令行的管理系统。注意,该包用到了泛型技术:[T any],适用于go1.18及以上版本。

ReadFromTXT()将txt每行的内容看作是一个结构体的字段,将每行的内容都保存到结构体,最后返回结构体切片。调用例子如下:

Data, err := ReadFromTXT[TestStruct](filiepath)

其中TestStruct是用户自定义的结构体,data是结构体切片,filepath是txt文件路径。

ReadFromALLTXT()遍历当前目录下所有txt,然后对每个txt调用ReadFromTXT(),最后返回二维结构体切片。调用例子除了函数名之外,和ReadFromTXT()一样。

Save2TXT()将传入的结构体切片中的内容取出,依次写入txt,调用例子如下:

err := Save2TXT(filePath, dataToSave)

其中dataToSave是需要保存的内容,类型为结构体切片。

注意:

1.txt每行的字段默认以空格隔开,如想修改可在本地跳转到源码修改,但这对读写数据没有影响,不建议修改。
2.结构体的内容默认是基本类型,如果有组合类型,需要读者分别定义结构体,再调用函数。比如基本类型和切片组合,则需要定义另一个结构体保存切片的元素类型。


http://www.mrgr.cn/news/41768.html

相关文章:

  • Stable Diffusion绘画 | 来训练属于自己的模型:LoRA模型验收
  • Python库pandas之四
  • 一些 Go Web 开发笔记
  • 华为云技术深度解析:以系统性创新加速智能化升级
  • 管理方法(12)-- 采购管理
  • 高级java每日一道面试题-2024年10月1日-服务器篇[Redis篇]-Redis数据结构压缩列表和跳跃表的区别?
  • Vue H5(手写)实现下拉刷新
  • FreeRTOS篇8:二值信号量
  • Stream流的终结方法
  • 使用python iter方法读取文件
  • arduino点亮墨水屏
  • 第十四讲-输入控件QPlainTextEdit
  • “衣依”服装销售平台:Spring Boot技术实践与创新
  • 深度学习应用
  • YOLO11改进|上采样篇|引入DySample轻量级动态上采样器
  • 昇思MindSpore进阶教程--在ResNet-50网络上应用二阶优化实践(上)
  • 计算机网络期末复习真题(附真题答案)
  • 奶茶在线小程序介绍
  • Linux运维必知应知命令集合
  • 物联网智能项目探究和方案设计