登录
首页 >  Golang >  Go问答

如何将 utf8 文字(即“\u1F606”)转换为符文? (不要从符文中获取 UTF8!)

来源:stackoverflow

时间:2024-04-16 13:36:32 356浏览 收藏

小伙伴们对Golang编程感兴趣吗?是否正在学习相关知识点?如果是,那么本文《如何将 utf8 文字(即“\u1F606”)转换为符文? (不要从符文中获取 UTF8!)》,就很适合你,本篇文章讲解的知识点主要包括。在之后的文章中也会多多分享相关知识点,希望对大家的知识积累有所帮助!

问题内容

我正在尝试使用 utf8 十六进制代码生成连续字符。例如第一部分,我将其称为“基本”代码:259 第二部分,我称之为“结束”代码:1(或,2,或a,或f等)

这些以字符串形式传入。一旦我附加结束代码并获得完整的字符串(即:259e),如何将其转换为实际的 utf8 表示(或“字符”)

我不知道从哪里开始。我知道 string(rune('\u259e') 会给我表示形式 ( ▞),但我不知道如何将字符串作为(单引号)utf8 字符代码转换为 rune 。 p>

package main

import "fmt"

func main() {
    s1 := "259"
    s2 := "E"
    s3 := "\\u"+s1+s2
    fmt.Println(s3)
    fmt.Println(string(rune('\u259E'))) 
}

期望的结果是我能够从生成的代码字符串表示形式返回 utf8 字符(以及可能的代理对)。

总体要点(例如)是我希望字符串值“272a”返回为:✪


解决方案


将十六进制值解析为 int32。

然后将该值转换为 println 中的 rune

package main

import "fmt"
import "strconv"

func main() {
    s1 := "259"
    s2 := "E"
    s3, err := strconv.ParseInt(s1+s2, 16, 32)
    fmt.Println(string(rune(s3)))
    fmt.Println(err)
}

好了,本文到此结束,带大家了解了《如何将 utf8 文字(即“\u1F606”)转换为符文? (不要从符文中获取 UTF8!)》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>