From e854687129d8df8418147e96104aad1956730411 Mon Sep 17 00:00:00 2001 From: CHENQ Date: Fri, 7 Oct 2016 11:14:35 +0800 Subject: [PATCH 1/3] fix dependency from "code.google.com/p/go.text" TO "golang.org/x/text" --- codec.go | 16 ++++++++-------- trans-utf32.go | 26 ++++++++++++++++---------- 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/codec.go b/codec.go index b20eed2..4f52f47 100644 --- a/codec.go +++ b/codec.go @@ -1,14 +1,14 @@ package chardet import ( - "bytes" - "code.google.com/p/go.text/encoding" - "code.google.com/p/go.text/encoding/japanese" - "code.google.com/p/go.text/encoding/korean" - "code.google.com/p/go.text/encoding/simplifiedchinese" - "code.google.com/p/go.text/encoding/traditionalchinese" - "code.google.com/p/go.text/encoding/unicode" - "code.google.com/p/go.text/transform" + "bytes" + "golang.org/x/text/encoding" + "golang.org/x/text/encoding/japanese" + "golang.org/x/text/encoding/korean" + "golang.org/x/text/encoding/simplifiedchinese" + "golang.org/x/text/encoding/traditionalchinese" + "golang.org/x/text/encoding/unicode" + "golang.org/x/text/transform" "errors" "io" ) diff --git a/trans-utf32.go b/trans-utf32.go index 82d949e..f413e70 100644 --- a/trans-utf32.go +++ b/trans-utf32.go @@ -1,7 +1,8 @@ package chardet import ( - "code.google.com/p/go.text/transform" + "golang.org/x/text/encoding" + "golang.org/x/text/transform" . "unicode/utf8" ) @@ -188,23 +189,28 @@ func (u *u8t32l) Reset() { type utf32le struct{} // 返回解码小端在前的UTF-16到UTF-8的解码器 -func (u utf32le) NewDecoder() transform.Transformer { - return new(u32lt8) +func (u utf32le) NewDecoder() *encoding.Decoder { + return &encoding.Decoder{Transformer: &u32lt8{ + }} } -// 返回编码UTF-8到小端在前的UTF-16的编码器 -func (u utf32le) NewEncoder() transform.Transformer { - return new(u8t32l) +func (u utf32le) NewEncoder() *encoding.Encoder { + return &encoding.Encoder{Transformer: &u8t32l{ + }} } type utf32be struct{} // 返回编码UTF-8到大端在前的UTF-16的解码器 -func (u utf32be) NewDecoder() transform.Transformer { - return new(u32bt8) +func (u utf32be) NewDecoder() *encoding.Decoder { + return &encoding.Decoder{Transformer: &u32bt8{ + }} } // 返回解码大端在前的UTF-16到UTF-8的解码器 -func (u utf32be) NewEncoder() transform.Transformer { - return new(u8t32b) +func (u utf32be) NewEncoder() *encoding.Encoder { + return &encoding.Encoder{Transformer: &u32bt8{ + }} } + + From e7c5fa2a901b77d1eb9edb63bdc47127f40a1795 Mon Sep 17 00:00:00 2001 From: CHENQ Date: Fri, 7 Oct 2016 11:19:17 +0800 Subject: [PATCH 2/3] add readme --- README.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index bfe32d5..feda866 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,12 @@ -chardet -======= +#chardet +##history + +fix dependency from + +`code.google.com/p/go.text` TO `golang.org/x/text` + +## detect text encoding, like python chardet, but for go 本包用于探测文本的编码格式。 From ae230b79a1bb4a46c1f273aa29f2da9e646487f5 Mon Sep 17 00:00:00 2001 From: chennqqi Date: Fri, 7 Oct 2016 11:41:03 +0800 Subject: [PATCH 3/3] Update README.md --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index feda866..2beff3a 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,11 @@ fix dependency from `code.google.com/p/go.text` TO `golang.org/x/text` +讲真,中英文混合的GBK会识别为UTF-16BE + +![](http://qq.yh31.com/tp/zjbq/201609231126325282.jpg) + + ## detect text encoding, like python chardet, but for go