网站首页 > 技术教程 正文
Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。
在实际应用有很多需要中文和unicode转换的场景,这里主要介绍通过golang实现中文和unicode互相转换。
1、中文转unicode
这一步比较简单
示例
sText := "hello 你好"
textQuoted := strconv.QuoteToASCII(sText)
textUnquoted := textQuoted[1 : len(textQuoted)-1]
fmt.Println(textUnquoted)2、unicode 转中文
网上有些例子,通过 \u 分隔来实现,这种方式存在局限性。比如字符里面含有非中文字符,就会出现问题。
正确转换示例
package main
import (
"fmt"
"strconv"
"strings"
)
?
func zhToUnicode(raw []byte) ([]byte, error) {
str, err := strconv.Unquote(strings.Replace(strconv.Quote(string(raw)), `\\u`, `\u`, -1))
if err != nil {
return nil, err
}
return []byte(str), nil
}
?
func main() {
sText := "hello 你好"
textQuoted := strconv.QuoteToASCII(sText)
textUnquoted := textQuoted[1 : len(textQuoted)-1]
fmt.Println(textUnquoted)
v, _ := zhToUnicode([]byte(textUnquoted))
fmt.Println(string(v))
}
?- strconv.Quote(s string)string -> 返回字符串在go语法下的双引号字面值表示,控制字符和不可打印字符会进行转义(\t,\n等)
- strconv.Unquote(s string)(t string,err error) -> 函数假设s是一个半引号、双引号、反引号包围的go语法字符串,解析它并返回它表示的值。(如果是单引号括起来的,函数会认为s是go字符字面值,返回一个单字符的字符串)
links
猜你喜欢
- 2024-11-08 php下如何简单快捷的实现邮件发送
- 2024-11-08 Go - Strings(gostrings)
- 2024-11-08 Swift 4.1 官方文档(第二十三章)词汇结构(Lexical Structure)
- 2024-11-08 数据库基础05:存储过程、触发器的创建、执行、修改与删除
- 2024-11-08 【全网最全】Python 基础(一):入门必备知识
- 2024-11-08 OOP 思想在 TCC/APIX/GORM 源码中的应用
- 2024-11-08 Golang 中的 strconv 包详解(golang stl)
欢迎 你 发表评论:
- 10-23Excel计算工龄和年份之差_excel算工龄的公式year
- 10-23Excel YEARFRAC函数:时间的"年份比例尺"详解
- 10-23最常用的10个Excel函数,中文解读,动图演示,易学易用
- 10-23EXCEL中如何计算截止到今日(两个时间中)的时间
- 10-2390%人不知道的Excel神技:DATEDIF 精准计算年龄,告别手动算错!
- 10-23计算工龄及工龄工资(90%的人搞错了):DATE、DATEDIF组合应用
- 10-23Excel中如何计算工作日天数?用这两个函数轻松计算,附新年日历
- 10-23怎样快速提取单元格中的出生日期?用「Ctrl+E」批量搞定
- 最近发表
-
- Excel计算工龄和年份之差_excel算工龄的公式year
- Excel YEARFRAC函数:时间的"年份比例尺"详解
- 最常用的10个Excel函数,中文解读,动图演示,易学易用
- EXCEL中如何计算截止到今日(两个时间中)的时间
- 90%人不知道的Excel神技:DATEDIF 精准计算年龄,告别手动算错!
- 计算工龄及工龄工资(90%的人搞错了):DATE、DATEDIF组合应用
- Excel中如何计算工作日天数?用这两个函数轻松计算,附新年日历
- 怎样快速提取单元格中的出生日期?用「Ctrl+E」批量搞定
- Excel日期函数之DATEDIF函数_excel函数datedif在哪里
- Excel函数-DATEDIF求司龄_exceldatedif函数计算年龄
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)

本文暂时没有评论,来添加一个吧(●'◡'●)