go 判断两个 slice/struct/map 是否相等的实例

可以通过 reflect.DeepEqual 比较两个 slice/struct/map 是否相等:package main import ( "fmt" "reflect") type A struct { s string} func main() { a1 := A{s: "abc"}...

Golang 如何判断数组某个元素是否存在(isset)

如,现在需要判断命令行是否传了参数,即 os.Args[1] 是否存在如果使用下述的判断:package main import ( "fmt" "os") func main() { if os.Args[1] != "" { fmt.Println("aaa")...

golang:json 反序列化的[]和nil操作

我就废话不多说了,大家还是直接看代码吧~package mainimport ( "encoding/json" "log")type JS struct { A []string}func main() { v1 := &JS{} v2 := &JS{A: []string{}} o...

golang判断net.Conn 是否已关闭的操作

在多线程的线程里边,用一个线程处理一条连接,如何判断连接已经关闭?试了一下,如果连接中断,读写会出现这种net.OpError,这个就可以判断是否断开但是我也不确定有没有更好的方法?如...

golang获取网卡信息操作

我就废话不多说了,大家还是直接看代码吧~package mainimport ( "fmt" "os/exec" "strings" "github.com/safchain/ethtool")func main() { baseNicPath := "/sys/class/net/"...

Go语言获取系统性能数据gopsutil库的操作

psutil是一个跨平台进程和系统监控的Python库,而gopsutil是其Go语言版本的实现。本文介绍了它的基本使用。Go语言部署简单、性能好的特点非常适合做一些诸如采集系统信息和监...

go语言 bool类型的使用操作

我就废话不多说了,大家还是直接看代码吧~// 1 声明类型,没有初始化,零值(false)var a boola = truefmt.Println("a = ", a) // 2 自动推导类型var b = falsefmt.Println("b...

go语言 全局变量和局部变量实例

一、局部变量1 定义在{}里面的变量时局部变量,只能在{}里面有效2 执行到定义的那句话,开始分配内存空间,离开作用域自动进行释放3 作用域,就是变量作用的范围package main impor...

浅谈golang中的&^位清空操作

如下所示:c = a &^ b含义:b 转为二进制时,值为1 的位置对应c的位置值为0;c中剩余位置值与a对应位置值相同(即:所谓的位清空操作,把b中1对应位置在c位置上清空),详见下面代码package m...

使用go的interface案例实现多态范式操作

看程序:package main import "fmt" type BaseIntf interface { Process()} type Msg1 struct { req int rsp int} func (p *Msg1) Process() { fmt.Println("process 1")} ty...

对Golang中的runtime.Caller使用说明

如下所示:func Caller(skip int) (pc uintptr, file string, line int, ok bool)参数:skip是要提升的堆栈帧数,0-当前函数,1-上一层函数,....返回值:pc是uintptr这个返回的是函数...

go判断文件夹是否存在并创建的实例

我就废话不多说了,大家还是直接看代码吧~package mainimport ( "fmt" "os")// 判断文件夹是否存在func PathExists(path string) (bool, error) { _, err := os.Stat(path) i...

使用go读取gzip格式的压缩包的操作

我就废话不多说了,大家还是直接看代码吧~package main// 引入所需包import ( "os" "compress/gzip" "io/ioutil" "fmt")// gzip文件var fn = "./113.200.251.66_15108255...

使用go操作redis的有序集合(zset)

我就废话不多说了,大家还是直接看代码吧~package mainimport ( "fmt" "github.com/garyburd/redigo/redis")func main() { // 连接redis数据库,指定数据库的IP和端口 conn, e...

golang使用aes库实现加解密操作

golang实现加密解密的库很多,这里使用的是aes库+base64库来实现.使用时,需要指定一个私钥,来进行加解密,这里指定是:var aeskey = []byte(“321423u9y8d2fwfl”)上代码...

解决Go语言数据库中null值的问题

本文主要介绍如何使用go语言database/sql库从数据库中读取null值的问题,以及如何向数据库中插入null值。本文在这里使用的是sql.NullString, sql.NullInt64, sql.NullFloat64...

go 读取BMP文件头二进制读取方式

BMP文件头定义:WORD 两个字节 16bitDWORD 四个字节 32bitpackage main import ( "encoding/binary" "fmt" "os") func main() { file, err := os.Open("tim.bmp") if err !=...

golang 如何获取pem格式RSA公私钥长度

因在做license注册机制当中,有对根据本地RSA pem密钥文件判断出RSA的公私密钥长度的需求(即:根据pem内容判断出RSA密钥是1024位或者2048位,或者其他位数等),因此个人通过思考,摸索...

golang文件读取-按指定BUFF大小读取方式

a.txt文件内容:ABCDEFGHIHELLO GOLANGpackage mainimport ( "fmt" "os" "io")func main() { fileName := "C:\\Robert\\日志分析\\tools_go\\vdn_sqlInterface\\a.txt"...

Golang 实现复制文件夹同时复制文件

Golang 复制文件夹,包括文件夹中的文件/** * 拷贝文件夹,同时拷贝文件夹中的文件 * @param srcPath 需要拷贝的文件夹路径: D:/test * @param destPath 拷贝到的位置: D:/bac...

golang实现的文件上传下载小工具

前言虽然现在文件上传下载工具多如牛毛,比如http、ftp、sftp、scp等方案都可以用于文件传输,但都是需要安装服务器甚至客户端。
有一种场景是我只需要临时上传或下载一个文件,...

go 协程返回值处理操作

我就废话不多说了,大家还是直接看代码吧~package mainimport "fmt"import "sync"var ch = make(chan int)func do(lock *sync.Mutex, ct *int) { lock.Lock() *ct++ lock.Unl...

Golang的select多路复用及channel使用操作

看到有个例子实现了一个类似于核弹发射装置,在发射之前还是需要随时能输入终止发射。这里就可以用到cahnnel 配合select 实现多路复用。select的写法用法有点像switch。但是...

golang gin框架获取参数的操作

1.获取URL参数GET请求参数通过URL传递URL参数可以通过DefaultQuery()或Query()方法获取DefaultQuery()若参数不存在,返回默认值,Query()若参数不存在,返回空串user_id := com.S...

golang int 转float 强转和高精度转操作

golang int 转float方法一:强转:代码如下:import "fmt"func main() { var money int money = 1 fmt.Println(float64(money) / float64(100))}输出结果:0.01方法二:高精度转:代码...

返回顶部
顶部