草庐IT

UTF8Encoding

全部标签

encoding - 我如何在 Golang 中将一个 16 位整数写入多个字节?

假设我有一个16位整数259(二进制为0000000100000011),我想将它写入Go中的字节流。一个字节只有8位,那么如何将整数拆分为多个字节? 最佳答案 使用binary.Write编码/二进制包的方法。buf:=new(bytes.Buffer)err:=binary.Write(buf,binary.BigEndian,uint16(259))iferr!=nil{fmt.Println("binary.Writefailed:",err)}//Thisshouldbetwobyteswithyourencodedint

xml - 使用 encoding/xml.Encoder 如何将 xml header 放在自己的行上?

我有以下使用xml.Encode的代码.packagemainimport("bytes""encoding/xml""fmt")typeStuffstruct{Namestring`xml:"name"`}funcmain(){w:=&bytes.Buffer{}enc:=xml.NewEncoder(w)enc.Indent("","")procInst:=xml.ProcInst{Target:"xml",Inst:[]byte("version=\"1.0\"encoding=\"UTF-8\""),}iferr:=enc.EncodeToken(procInst);err!=

go - Aerospike 字符集 utf8 设置

我正在aerospike中插入一条记录。在我的本地环境中一切正常。但是,在暂存环境中,UTF-8字符未正确存储。aql>selectmsgfromtest.msgesLIST('["{"message_id":"kxwFZHVBKj","title":"คำถามได้รับà¸à¸²à¸£à¸•อบà¸à¸¥à¸±à¸šà¹à¸¥à¹‰à¸§!","actions":|+----------------------------------------------------------------------------------

utf-8 - 切断 UTF 字符串中的最后一个 rune

如何截断UTF字符串中的最后一个rune?这种方法显然是不正确的:packagemainimport("fmt""unicode/utf8")funcmain(){string:="你好"length:=utf8.RuneCountInString(string)//howtocutofflastruneinUTFstring?//thismethodisobviouslyincorrect:withoutLastRune:=string[0:length-1]fmt.Println(withoutLastRune)}Playground 最佳答案

json - 对于 encoding/json,如何优雅地处理键名中包含撇号的 API JSON 调用?

我正在编写一个简单的Go程序来使用一个简单的API。某些值未正确解码到我的结构中,我已将问题追溯到返回的JSON对象中的无效键名称。我可以用这段代码重现这个问题:jsonStr:=`{"valid_json":"I'mValid","invalid'json":"Ishouldbevalid,butI'mnot"}`typeresultstruct{Validstring`json:"valid_json"`Invalidstring`json:"invalid'json"`}varresresulterr:=json.Unmarshal([]byte(jsonStr),&res)if

mongodb - 在 Go 中将任何编码转换为 UTF 8

我正在通过IMAP下载邮件。接下来,我将已解析的消息添加到MongoDB中。我有一个问题,因为MongoDB仅支持UTF8。我想将任何编码转换为UTF8。代码多种多样。如何将每个字符串转换为UTF8?我知道,我可以转换为二进制,但我必须有普通文本,因为我必须在数据库中搜索短语。除非,我可以用二进制搜索普通文本吗? 最佳答案 我正在使用go-charset项目来执行此操作:https://code.google.com/p/go-charset/非常简单,您从字符集创建一个阅读器,它会自动转换为utf-8。来自图书馆的例子:r,err

string - go encoding/csv 中引用字符串的奇怪 CSV 结果

我有一小段代码让我整个周末都很忙。packagemainimport("encoding/csv""fmt""log""os")funcmain(){f,err:=os.Create("./test.csv")iferr!=nil{log.Fatal("Error:%s",err)}deferf.Close()w:=csv.NewWriter(f)varrecord[]stringrecord=append(record,"Unquotedstring")s:="Cr@zytextwith,and\\and\"etc"record=append(record,s)fmt.Println

character-encoding - Go:使用 windows-1252 编码写入文件

是否可以使用特定编码(例如windows-1252)写入Go中的文件? 最佳答案 您将不得不使用库在编码之间进行转换:https://code.google.com/p/go-charset/该库允许您将字符串与windows-1252等编码相互转换。 关于character-encoding-Go:使用windows-1252编码写入文件,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

go - encoding/xml 处理未映射的元素

来自http://golang.org/pkg/encoding/xml/#UnmarshalIftheXMLelementcontainsasub-elementthathasn'tmatchedanyoftheaboverulesandthestructhasafieldwithtag",any",unmarshalmapsthesub-elementtothatstructfield.我无法将XML信封的其余部分放入我的结构中(以表明我有一个不完整的映射)http://play.golang.org/p/mnFqAcguJQ我知道您可以使用,inline将此方法与mgo包中的bs

encoding - go.text 中的 iso-8859-1 编码支持

我在我的项目中使用go.texthttps://godoc.org/code.google.com/p/go.text/encoding我不明白为什么它缺少iso-8859-1?我知道我可以轻松地对其进行转码byte->rune->utf8UnmarshalanISO-8859-1XMLinputinGo但我想知道go.text中是否有一些编码是iso-8859-1但命名不同。我知道它有以下名称。ISO_8859-1:1987ISO-8859-1iso-ir-100ISO_8859-1latin1l1IBM819CP819csISOLatin1 最佳答案