1 В избранное 1 Ответвления 0

huangmiao/testcase

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
uuid.go 662 Байты
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
huangmiao Отправлено 24.03.2024 08:05 65abcef
package gitee
import (
"crypto/rand"
"encoding/hex"
)
func encodeUUID(u []byte) string {
buf := make([]byte, 36)
hex.Encode(buf[0:8], u[0:4])
buf[8] = '-'
hex.Encode(buf[9:13], u[4:6])
buf[13] = '-'
hex.Encode(buf[14:18], u[6:8])
buf[18] = '-'
hex.Encode(buf[19:23], u[8:10])
buf[23] = '-'
hex.Encode(buf[24:], u[10:])
return string(buf)
}
// NewUUID create v4 uuid
// More powerful UUID libraries can be used: https://github.com/google/uuid
func NewUUID() (string, error) {
b := make([]byte, 16)
_, err := rand.Read(b)
if err != nil {
return "", err
}
b[6] = (b[6] & 0x0f) | 0x40
b[8] = (b[8] & 0x3f) | 0x80
return encodeUUID(b), nil
}

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/huangmiao/testcase.git
git@api.gitlife.ru:huangmiao/testcase.git
huangmiao
testcase
testcase
master