tools

package module
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 9, 2025 License: Apache-2.0 Imports: 28 Imported by: 2

Documentation

Index

Constants

View Source
const (
	AlgMd5    = 1
	AlgSha1   = 2
	AlgSha256 = 3
)
View Source
const (
	BoxSizeRateMin           float32 = 0.1
	ImageQueryBoxSizeRateMin float32 = 0.1
)
View Source
const (
	SignatureAlgorithmMD5        = "MD5"
	SignatureAlgorithmHMACSHA256 = "HMACSHA256"
)

Variables

View Source
var Reader io.Reader
View Source
var UUIDRegexp = regexp.MustCompile(fmt.Sprintf("^[a-f0-9]{8}%c([a-f0-9]{4}%c){3}[a-f0-9]{12}$", uuidDash, uuidDash))

Functions

func CheckSum

func CheckSum(data []byte) uint32

CheckSum compute checksum of input data.

func ComputeAge added in v0.0.3

func ComputeAge(birthStr string, baseDate *time.Time) (age int)

func Copy added in v0.0.3

func Copy(src any, dest any) error

func CreateDir

func CreateDir(path string, mode os.FileMode) error

CreateDir create dir.

func CreateDirIfNotExists

func CreateDirIfNotExists(path string, mode os.FileMode) error

CreateDirIfNotExists create dir if not exists.

func CurrentDataCompactStr added in v0.0.2

func CurrentDataCompactStr() string

CurrentDataCompactStr return current date in format yyyyMMdd

func CurrentDateInSeconds

func CurrentDateInSeconds() int64

CurrentDateInSeconds return the seconds representation of the current date in local

func CurrentDateStr added in v0.0.2

func CurrentDateStr() string

CurrentDateStr return current date in format yyyy-MM-dd

func CurrentDateTimeStr added in v0.0.2

func CurrentDateTimeStr() string

CurrentDateTimeStr return current datetime in format yyyy-MM-dd HH:mm:ss

func CurrentTimeCompactStr added in v0.0.2

func CurrentTimeCompactStr() string

CurrentTimeCompactStr return current time in format HHmmss

func DaysBefore

func DaysBefore(days int) int64

DaysBefore return the seconds representation of the start of days before now in local

func Decode

func Decode(jsonStr string, v any)

Decode deserialize

func DecodeBytes

func DecodeBytes(jsonBytes []byte, v any) error

DecodeBytes deserialize

func DecodeFile

func DecodeFile(file string, v any) error

DecodeFile deserialize file content.

func DecodeJson5 added in v0.0.3

func DecodeJson5(filePath string, output any) error

func DeleteFile

func DeleteFile(path string) bool

DeleteFile remove file return false if failed.

func DeleteFiles

func DeleteFiles(path string) bool

DeleteFiles remove dirs and files in path return false if failed.

func DoGet added in v0.0.3

func DoGet(rawUrl, uri, token string, params *url.Values, result any) (code int, err error)

func DoPost added in v0.0.3

func DoPost(rawUrl, uri string, token string, params *url.Values, body any, result any) (code int, err error)

func DoRequest added in v0.0.3

func DoRequest(method, rawUrl, uri string, params *url.Values, header *http.Header, body io.Reader) (resp *http.Response, err error)

func Encode

func Encode(v any) string

Encode serialize

func EncodeBytes

func EncodeBytes(v any) []byte

EncodeBytes serialize

func EncodeObj

func EncodeObj(v any, file string) error

EncodeObj serialize object to file.

func ExtractCerInfo added in v0.0.3

func ExtractCerInfo(cerNo string) (province, city, district, birthStr string, birth int64, age int, isMale int8)

ExtractCerInfo isMale 1:女性 2:男性

func FileCheckSum

func FileCheckSum(file string) uint32

FileCheckSum compute checksum of the input file.

func FileExists

func FileExists(path string) bool

FileExists return true if file exists.

func Float32Round

func Float32Round(f float32, pOffset int64) float32

func GetTimeInSeconds

func GetTimeInSeconds(timeStr string) int64

GetTimeInSeconds return the seconds representation of the timeString

timeStr in format hhhmmmsss ,e.g. 23h10m34s ,otherwise return -1

func GetToken added in v0.0.3

func GetToken(method, rawUrl, uri, user, password string) (token string, err error)

func HashUUID

func HashUUID(bs []byte) string

HashUUID generate hash uuid of the input data.

func ImagEmpty

func ImagEmpty(a []uint8) float32

func ImageColorId

func ImageColorId(im image.Image) uint64

func ImageHashContentRate

func ImageHashContentRate(a uint64) float32

func ImageHashDiff

func ImageHashDiff(a, b uint64) float32

func ImageHashId

func ImageHashId(im image.Image, bs []byte) (image.Image, image.Image, uint64, error)

func ImageHashNull

func ImageHashNull(a uint64) uint8

func ImageMaskAllow

func ImageMaskAllow(masks [][]float32, x, y int, w, h int) bool

func ImagePixGray

func ImagePixGray(im image.Image, x, y int) uint8

func ImageSimilarity

func ImageSimilarity(a, b []uint8) float32

func ImageTag

func ImageTag(m image.Image, tagSpace int) []uint8

func ImgBytesDecode

func ImgBytesDecode(bs []byte) (image.Image, error)

func ImgShmBytes

func ImgShmBytes(file string) ([]byte, error)

func IsType added in v0.0.3

func IsType[T any](a any) bool

func IsValidCardNo18 added in v0.0.3

func IsValidCardNo18(CardNo18 *[]byte) bool

func IsValidUUID

func IsValidUUID(UUID string) bool

IsValidUUID check if UUID is in valid format.

func LocalIP added in v0.0.3

func LocalIP() (ip string)

func ParseResponse added in v0.0.3

func ParseResponse(resp *http.Response, result any) (code int, err error)

func RandUUID

func RandUUID() string

RandUUID generate random hash uuid.

func RandomAlphaNum added in v0.0.3

func RandomAlphaNum(length int) string

func RandomNumChar added in v0.0.3

func RandomNumChar(length int) string

func ReadFile added in v0.0.3

func ReadFile(filename string, preRead int) (<-chan string, context.CancelFunc, error)

func Sign added in v0.0.3

func Sign(raw []byte, algo string) (signature []byte)

func SplitSeconds

func SplitSeconds(seconds int64) (int64, int64)

SplitSeconds return unix timestamp in seconds with two part:begin of a day and the offset

func TimeRingFromDaysAgo

func TimeRingFromDaysAgo(days int) *ring.Ring

TimeRingFromDaysAgo return time ring from days ago util next day.

func ToAny added in v0.0.3

func ToAny[T any](a any) T

func ToAnyE added in v0.0.3

func ToAnyE[T any](a any) (T, bool)

func TransTimeFormat

func TransTimeFormat(timeString string) string

TransTimeFormat Trans time format from hh:mm:ss to hhhmmmsss.If timeString format invalid return itself

eg. 23:10:34 => 23h10m34s

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL