Skip to content

Instantly share code, notes, and snippets.

View magicianlib's full-sized avatar

magicianlib magicianlib

View GitHub Profile
@magicianlib
magicianlib / datetime_format.cpp
Last active October 19, 2023 10:47
C++ 日期格式化
#include <chrono>
#include <ctime>
#include <iostream>
#include <string>
/**
* date format to string
* https://cplusplus.com/reference/ctime/strftime/
*/
@magicianlib
magicianlib / timer.hpp
Last active August 11, 2023 07:42
C++ timer计时器
#ifndef PROJECT_TIMER_HPP
#define PROJECT_TIMER_HPP
#include <ratio>
#include <chrono>
namespace datetime {
// DurationPeriod
typedef std::chrono::nanoseconds Nano; // 纳秒 <long, long>
@magicianlib
magicianlib / bcrypt.go
Created September 14, 2022 13:33
generate password use bcrypt
import (
"log"
"golang.org/x/crypto/bcrypt"
)
// go get -u golang.org/x/crypto/bcrypt
func GenerateBcryptSecret(plainPwd string) (string, error) {
return GenerateBcryptSecretWithCost(plainPwd, bcrypt.DefaultCost)
@magicianlib
magicianlib / HmacSha512.go
Last active September 14, 2022 05:18
Hmac-Sha512
package main
import (
"crypto/hmac"
"crypto/sha512"
"encoding/hex"
"fmt"
)
func main() {
import java.math.BigDecimal;
import java.math.RoundingMode;
/**
* 两经纬度点距离计算
* </p>
* 根据圆周率计算两点地图经纬度距离
*
* @author MinGRn <br > MinGRn97@gmail.com
*/
@magicianlib
magicianlib / csv_rw_customized.go
Last active June 15, 2022 09:40
CSV 操作示例
import (
"github.com/gocarina/gocsv"
"os"
"time"
)
type DateTime struct {
time.Time
}
@magicianlib
magicianlib / verify_chinese_mainland_id_card.go
Last active February 17, 2023 02:40
检查身份证号码合法性
import "math"
// VerifyChineseMainlandIdCard 检查身份证号码合法性
//
// Wikipedia:
// https://zh.wikipedia.org/wiki/中华人民共和国公民身份号码
//
// China gov:
// http://www.stats.gov.cn/tjsj/tjbz/tjyqhdmhcxhfdm
//
public final class CookieUtils {
public static Cookie getCookie(HttpServletRequest request, String name) {
Cookie[] cookies = request.getCookies();
if (cookies != null) {
int len = cookies.length;
for (int index = 0; index < len; ++index) {
Cookie cookie = cookies[index];
if (cookie.getName().equals(name)) {
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
public final class ResponseUtils {
private ResponseUtils() {
}
public static void writeJsonObject(HttpServletResponse response, Object object) {