Documentation
¶
Index ¶
- Constants
- func BD09toGCJ02(lon, lat float64) (float64, float64)
- func BD09toWGS84(lon, lat float64) (float64, float64)
- func Bin2Hex(data []byte) string
- func DecryptDecode(str string) string
- func EncryptEncode(str string) string
- func FileSize(path string) (int64, error)
- func GCJ02toBD09(lon, lat float64) (float64, float64)
- func GCJ02toWGS84(lon, lat float64) (float64, float64)
- func GetDefaultFloat64(value any, defaultValue float64) float64
- func GetDefaultInt(value any, defaultValue int) int
- func GetDefaultPage(page any) int
- func GetDefaultPageSize(size any, defaultSize int) int
- func GetDefaultString(value string, defaultValue string) string
- func GetDistance(lat1, lng1, lat2, lng2 float64) float64
- func GetSex(idcard string) int
- func GetYears(idcard string) (years string)
- func Hex2Bin(hexStr string) ([]byte, error)
- func HttpBuildQuery(data map[string]any) string
- func IdCardDecode(encodedStr string) (string, error)
- func IdCardEncode(idcard string) (string, error)
- func IfTrueValue(yes bool, yesValue any, noValue any) any
- func InArray(need string, haystack []string) bool
- func InArrayInt(need int, haystack []int) bool
- func InitEncryptStringAes(key string)
- func IsEmpty(str string) bool
- func IsZero(i int) bool
- func IsZeroTime(tm time.Time) bool
- func Ksort(m map[string]any) []string
- func Lower(str string) string
- func MapStruct(obj any, data any) error
- func MapToArgs(m map[string]any) []any
- func Md5(data string) string
- func Md5Bytes(data []byte) string
- func Md5File(filePath string) (string, error)
- func Now() time.Time
- func NowString() string
- func NowUnix() int64
- func NowUnixString() string
- func PKCS7Padding(data []byte, blockSize int) []byte
- func PKCS7UnPadding(data []byte) ([]byte, error)
- func ParamKeyRSort(param map[string]any) string
- func ParamKeySort(param map[string]any) string
- func ParamToSign(param map[string]any, key string) string
- func ParamToSignV0(param map[string]any, key string) string
- func Rand(min, max int) int
- func RandInt(l int) int
- func RandomString(n int) string
- func Rc4Decrypt(key []byte, cipherTextBase64 string) (string, error)
- func Rc4Encrypt(key, plaintext []byte) (string, error)
- func RemoveDuplicates[T comparable](slice []T) []T
- func RemoveDuplicatesInPlace[T comparable](slice []T) []T
- func RemoveWhitespace(input string) string
- func Sha1(data string) string
- func StrToLocalTime(tm string) (time.Time, error)
- func StrToLocalTimeWithNoError(tm string) time.Time
- func StructToArgs(s any) []any
- func StructToMap(obj any) (map[string]any, error)
- func TimestampToTime(timestamp int64) time.Time
- func Today() string
- func UcFirst(s string) string
- func UpdateIfChanged[T comparable](old *T, newVal T) bool
- func Upper(str string) string
- func WGS84toBD09(lon, lat float64) (float64, float64)
- func WGS84toGCJ02(lon, lat float64) (float64, float64)
- func XorObfuscate(key string, original []byte) []byte
- type AesCbc
- type AesEcb128
- type EncryptString
- func (e EncryptString) IsEmpty() bool
- func (e EncryptString) MarshalBinary() ([]byte, error)
- func (e EncryptString) MarshalJSON() ([]byte, error)
- func (e *EncryptString) Scan(value interface{}) error
- func (e EncryptString) String() string
- func (e *EncryptString) UnmarshalBinary(data []byte) error
- func (e *EncryptString) UnmarshalJSON(data []byte) error
- func (e EncryptString) Value() (driver.Value, error)
- type FileEncrypt
- type Xor
Constants ¶
const ( XPi = math.Pi * 3000.0 / 180.0 OFFSET = 0.00669342162296594323 AXIS = 6378245.0 Radius = 6378.137 EarthR = 6371e3 // 地球半径,单位为米 )
WGS84坐标系:即地球坐标系,国际上通用的坐标系。 GCJ02坐标系:即火星坐标系,WGS84坐标系经加密后的坐标系。Google Maps,高德在用。 BD09坐标系:即百度坐标系,GCJ02坐标系经加密后的坐标系。
Variables ¶
This section is empty.
Functions ¶
func BD09toWGS84 ¶
BD09toWGS84 百度坐标系->WGS84坐标系
func GCJ02toWGS84 ¶
GCJ02toWGS84 火星坐标系->WGS84坐标系
func GetDefaultFloat64 ¶
GetDefaultFloat64 获取默认值(Float64)
func GetDefaultPageSize ¶
GetDefaultPageSize 获取默认每页数量
func GetDefaultString ¶
GetDefaultString 获取默认值(字符串)
func GetDistance ¶
GetDistance 给定经纬度计算两点间的距离 返回米
func HttpBuildQuery ¶
HttpBuildQuery 实现类似 PHP 的 http_build_query 功能
func InArrayInt ¶
func InitEncryptStringAes ¶ added in v0.0.2
func InitEncryptStringAes(key string)
InitEncryptStringAes 需要初始化
func PKCS7Padding ¶
PKCS7Padding 对数据进行 PKCS7 填充
func ParamToSignV0 ¶
ParamToSignV0 将数组按照字母排序进行md5加密 Parmmkmd5sign(原)
func RandomString ¶ added in v0.0.3
RandomString 生成指定长度的随机字符串(使用加密安全的随机数生成器)
func Rc4Decrypt ¶
Rc4Decrypt 解密密文(已 base64 编码) key: 密钥 cipherTextBase64: base64 编码后的密文
func Rc4Encrypt ¶
Rc4Encrypt 加密 urlencoded base64
func RemoveDuplicates ¶
func RemoveDuplicates[T comparable](slice []T) []T
RemoveDuplicates slice 去重,顺序不变,使用 map 去重(创建新 slice)
func RemoveDuplicatesInPlace ¶
func RemoveDuplicatesInPlace[T comparable](slice []T) []T
RemoveDuplicatesInPlace slice 去重,顺序不变,使用 map 去重(原地修改 slice)
func RemoveWhitespace ¶ added in v0.0.3
RemoveWhitespace 去除特殊字符
func StructToArgs ¶
func TimestampToTime ¶
func UpdateIfChanged ¶
func UpdateIfChanged[T comparable](old *T, newVal T) bool
UpdateIfChanged 如果值变了则返回true,并且赋新的值
func WGS84toBD09 ¶
WGS84toBD09 WGS84坐标系->百度坐标系
func WGS84toGCJ02 ¶
WGS84toGCJ02 WGS84坐标系->火星坐标系
func XorObfuscate ¶ added in v0.0.3
XorObfuscate 使用xor进行混淆
Types ¶
type AesCbc ¶ added in v0.0.8
func InitEncryptAesCbcWithKeyIv ¶ added in v0.0.8
func (*AesCbc) DecryptCBC ¶ added in v0.0.8
func (*AesCbc) EncryptCBC ¶ added in v0.0.8
EncryptCBC 加密
type AesEcb128 ¶
type AesEcb128 struct {
Key []byte
}
var EncryptStringAes *AesEcb128
func InitEncryptAesWithKeyIv ¶
func (*AesEcb128) DecryptECB ¶
DecryptECB 解密
type EncryptString ¶ added in v0.0.2
type EncryptString string
func (EncryptString) MarshalBinary ¶ added in v0.0.2
func (e EncryptString) MarshalBinary() ([]byte, error)
MarshalBinary 实现 encoding.BinaryMarshaler,redis 写入用
func (EncryptString) MarshalJSON ¶ added in v0.0.2
func (e EncryptString) MarshalJSON() ([]byte, error)
MarshalJSON 实现 json.Marshaler 接口,用于json序列化
func (*EncryptString) Scan ¶ added in v0.0.2
func (e *EncryptString) Scan(value interface{}) error
Scan 重写读取数据库的值解密的方法
func (EncryptString) String ¶ added in v0.0.2
func (e EncryptString) String() string
String 转为string
func (*EncryptString) UnmarshalBinary ¶ added in v0.0.2
func (e *EncryptString) UnmarshalBinary(data []byte) error
UnmarshalBinary 实现 encoding.BinaryUnmarshaler redis 读取用
func (*EncryptString) UnmarshalJSON ¶ added in v0.0.2
func (e *EncryptString) UnmarshalJSON(data []byte) error
UnmarshalJSON 实现 json.Unmarshaler 接口,用于json反序列化
type FileEncrypt ¶
type FileEncrypt struct {
}
FileEncrypt 文件加密解密工具
func (*FileEncrypt) DecryptData ¶
DecryptData 解密内存中的数据,不写入文件 data: 源数据 password: 密码 返回: 解密后的数据, 文件名, 错误信息