2020
12-23
12-23
golang使用aes库实现加解密操作
golang实现加密解密的库很多,这里使用的是aes库+base64库来实现.使用时,需要指定一个私钥,来进行加解密,这里指定是:varaeskey=[]byte(“321423u9y8d2fwfl”)上代码:packagemainimport("fmt""crypto/cipher""crypto/aes""bytes""encoding/base64")funcPKCS5Padding(ciphertext[]byte,blockSizeint)[]byte{padding:=blockSize-len(ciphertext)%blockSizepadtext:=bytes.Repeat([]byte{byte(padding)},...
继续阅读 >
目标:在64位linux系统上编译出32位程序。操作:1.执行goenv查看当前go环境配置2.执行exportGOARCH=386配置go输出系统平台为32位3.gobuild编译程序4.使用filemain指令查看编译出的可执行程序是否为32位实践图片:补充:golangfloat32/64与[]byte互转网络协议开发中经常需要将int、float、bool等转为二进制数据,float32、64与[]byte处理:import("encoding/binary""math")funcFloat32ToByte(floatfloat32)[]b...
实现目的:实现字符串切片去重,只是两个字符完全相同时,去除一个。实现方式:考虑两种,一种是常规的双重循环去除,另一种是利用map的key的唯一性实现。1、通过双重循环来过滤重复元素方法1,思路:利用for双重循环,新建一个slice,遍历原slice中的每一个元素,每一次判断这个元素和后面元素是否相同,若相同则去除,若不同则存入新slice中,判断本元素后,再继续判断下一个元素,直到判断完毕。packagemainimport"fmt"func...
baliance/gooxmlgooxml是可以对整个officedocument提供支持的golang库,功能很强大,这里简单给出对word文档的读取案例安装gogetbaliance.com/gooxml/gobuild-ibaliance.com/gooxml/…解析word代码packagemainimport("fmt""log""baliance.com/gooxml/document")funcmain(){doc,err:=document.Open("ml.docx")iferr!=nil{log.Fatalf("erroropeningdocument:%s",err)}//doc.Paragraphs()得到包含文档...
path/filepath包下的相关函数1.ToSlash函数funcToSlash(pathstring)string功能:将path中平台相关的路径分隔符转换成'/'例如:windows当前路径:D:\gopro\src\study,转换之后D:/gopro/src/study2.FromSlash函数funcFromSlash(pathstring)string功能:将path中的'/'转换为系统相关的路径分隔符3.Dir函数funcDir(pathstring)string功能:获取path中最后一个分隔符之前的部分(不包含分隔符)4.Base函数funcBase(path...