Go语言中文网 为您找到相关结果 72

Golang GBK与UTF-8互转

package main import ( "code.google.com/p/mahonia" "fmt" ) func main() { //"你好,世界!"的GBK编码 testBytes := []byte{0xC4, 0xE3, 0xBA, 0xC3, 0xA3, 0xAC, 0xCA, 0xC0, 0xBD, 0xE7, 0xA3, 0xA1} var testStr string utfStr := "你好,世界!" var dec mahonia.Decoder var enc mahonia.Encoder testStr = string(testBytes) dec = mahonia.NewDecoder("gbk") if ret, ok := dec.Conve...阅读全文

博文 2015-02-03 10:00:02 ____追梦人

golang中文unicode编码

http://www.dotcoo.com/golang-unicode-encode golang在很多时候要对中文进行unicode编码,今天有兴趣就写了一个,golang太爽了今天写了不少文章了.呵呵 package main import ( "fmt" "strconv" ) func main() { rs := []rune("golang中文unicode编码") json := "" html := "" for _, r := range rs { rint := int(r) if rint < 128 { json += string(r) html += string(r) } else { json += "\\u"+strconv.FormatInt(int64...阅读全文

博文 2014-10-05 00:00:01 DarkWingBoy

golang读取文件编码转换问题

首先导入包 "code.google.com/p/mahonia" 可以通过此链接获得此包 https://code.google.com/p/mahonia/ 参考代码如下: package main import ( "bufio" "code.google.com/p/mahonia" "log" "os" "strings" "time" ) func main() { //创建日志文件 t := time.Now() filepath := "./log_" + strings.Replace(t.String()[:19], ":", "_", 3) + ".txt" file, err := os.OpenFile(filepath, os.O_CREATE, 0666) if...阅读全文

博文 2014-10-04 19:27:08 xlplbo

golang利用gob序列化struct对象保存到本地

golang可以通过json或gob来序列化struct对象,虽然json的序列化更为通用,但利用gob编码可以实现json所不能支持的struct的方法序列化,利用gob包序列化struct保存到本地也十分简单. gob包实现的序列化struct对象保存到本地 务必注意的是golang序列化有个小坑,就是struct里的字段必须要可导出也就是首字母大写 package main import ( "encoding/gob" "fmt" "os" ) type User struct { Id int Name string } func (this *User) Say() string { return this.Name + ` hello world ! ` } func main...阅读全文

博文 2015-04-22 03:00:00 reflectsky

p12转PEM供golang APNS使用

package main import ( "crypto/tls" "fmt" ) func main() { //LoadX509KeyPair读取并分析一个公用/私有密钥对从一对文件。该文件必须包含PEM编码数据。 _, err := tls.LoadX509KeyPair("./cert_dist.pem", "./key_dist2.pem") fmt.Println(err) //X509KeyPair解析一个公共/私有密钥对从一对PEM编码数据。 // _, err = tls.X509KeyPair(privateKey, publicKey) // fmt.Println(err) } //一、通过P12生成临时文件cert.pem // openssl pkcs12 -c...阅读全文

博文 2015-03-19 11:00:01 liaojie

golang高性能日志库zap配置示例

golang高性能日志库zap配置示例 zap是uber开源的Go高性能日志库,gitlab地址 安装 go get -u go.uber.org/zap 请注意,zap仅支持两个最新的Go版本。 示例 简单示例 格式化输出 package main import ( "go.uber.org/zap" "time" ) func main() { // zap.NewDevelopment 格式化输出 logger, _ := zap.NewDevelopment() defer logger.Sync() logger.Info("无法获取网址", zap.String("url", "http://www.baidu.com"), zap.Int("attempt", 3), zap....阅读全文

博文 2019-01-02 19:34:47 阿甘__

golang json编码,解析

json通用的数据交换格式,刚想做个别的东西,就想到要用json交换数据,就先把json的编码和解析搞定.看了看文档,写了一个事例代码.如下: package main import ( "fmt" "encoding/json" ) func main() { // json encode j1 := make(map[string]interface{}) j1["name"] = "豆蔻" j1["url"] = "http://www.dotcoo.com/" js1, err := json.Marshal(j1) if err != nil { panic(err) } println(string(js1)) // json decode j2 := make(map[stri...阅读全文

博文 2014-10-06 06:04:32 DarkWingBoy

[Golang] base64加密与解密

首先解释以下什么是base64(来自百度百科): Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。Base64编码可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,即所编码的数据不会被人用肉眼所直接看到。 在golang里有base64库可以实现相关操作,我尝试实现了加密解密...阅读全文

博文 2016-08-07 17:00:00 vincentX

GO中怎么处理URL编码?

比如我有一串字符串格式的URL,例如下边这样: %5B%7B%22ip%22%3A%22119.90.49.95%22%2C%22port%22%3A%228074%22%7D%2C%7B%22ip%22%3A%22119.90.49.110%22%2C%22port%22%3A%228050%22%7D%2C%7B%22ip%22%3A%22119.90.49.92%22%2C%22port%22%3A%228057%22%7D%2C%7B%22ip%22%3A%22119.90.49.104%22%2C%22port%22%3A%228016%22%7D%2C%7B%22ip%22%3A%22119.90.49.104%22%2C%22port%22%3A%228017%22%7D%2...阅读全文

请教一个字符编码转换的问题

使用go在windows下编程是,因go是UTF8的编码方式,但在用go读一些网页时,由于有些网页使用GBK的编码方式,这样,在存在转码的问题,找了很久,网上有这个第三方库,但怎么装都不成功,总有一些错,请大虾指点一下。我完全是个新手,谢谢! https://github.com/djimenez/iconv-go https://github.com/qiniu/iconv 以下是安装 https://github.com/qiniu/iconvr 的报错 C:\Users\sh>go get github.com/qiniu/iconv # github.com/qiniu/iconv C:/mingw64/bin/../lib/gcc/x86_64-w...阅读全文

测试一下golang的json序列化Marshal

func test_json() { x, _ := json.Marshal([]string{"aaa:123", "bbb:456"}) fmt.Println(x) var caps []string json.Unmarshal(x, &caps) fmt.Println(caps) } //输出结果 ------------------------------- [91 34 97 97 97 58 49 50 51 34 44 34 98 98 98 58 52 53 54 34 93] [aaa:123 bbb:456] //把每个字符都转成对应ascill数值 通过反射找到具体的编码器,此例子对应编码器为string func (e *encodeState) string...阅读全文

博文 2015-09-18 19:00:11 webyh

golang mysql 字符串插入错误

Incorrect string value: '\xEF\xBF\xBD\xEF\xBF\xBD...' 报这个错,基本是编码问题,检查一下表的编码 show create table table_name; 比如问题就出在字符集 | gosignal | CREATE TABLE `gosignal` ( `id` int(11) DEFAULT NULL, `time` varchar(30) DEFAULT NULL, `IMSI` varchar(25) DEFAULT NULL, `IMEI` varchar(25) DEFAULT NULL, `duration` int(11) DEFAULT NULL, `startLAC` varchar(10) DEFAULT NULL...阅读全文

博文 2014-10-04 19:26:12 ggaaooppeennngg

windows下go编码转换问题

github上有两个package做编码转换,都是基于iconv,用到了cgo,在linux下没有问题,在windows下用,非常麻烦。采用mingw安装libiconv也不行,一直提示找不到libiconv方法。 最终找到一个官方实现(纯go实现): https://code.google.com/p/go/source/checkout?repo=text gbk转utf-8示例: func gbk2utf8(str byte[]) ([]byte, error) { return ioutil.ReadAll(transform.NewReader(bytes.NewReader(str), simplifiedchinese.GBK.NewDecoder())) ...阅读全文

博文 2014-10-04 19:26:11 程序员Jack

golang实现base62编码

package main import ( "fmt" "math" ) var base = []string {"a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","0"} func base62encode(num int) string { baseStr...阅读全文

博文 2016-07-15 13:00:01 black_OX

golang加载css和js

├── main.go ├── static │ ├── css │ │ └── main.css │ └── js │ └── main.js └── view └── index.html 若有如上目录结构 // main.go func main() { http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static")))) // 启动静态文件服务 // ... }