当前位置: 首页 > 面试题库 >

在Swift中将Unicode符号或其XML / HTML实体转换为其Unicode数字

江天宇
2023-03-14
问题内容

给定一个Unicode符号String或其XML /
HTML实体,一个人如何生成其Unicode数字?例如,如果为您提供了字符串"෴",并且可以生成其HTML代码(෴),那么如何生成其Unicode数字(U+0DF4)?

我目前正在通过使用CFStringTransformAPI并kCFStringTransformToXMLHex用于转换来生成HTML实体。但是unicode号本身并没有转换。


问题答案:

更新: Xcode 9•Swift 4

extension String {
    var html2AttributedString: NSAttributedString? {
        do {
            return try NSAttributedString(data: Data(utf8), options: [.documentType: NSAttributedString.DocumentType.html, .characterEncoding: String.Encoding.utf8.rawValue], documentAttributes: nil)
        } catch {
            print(error)
            return nil
        }
    }
    var unicodes: [UInt32] { return unicodeScalars.map{$0.value} }
}

Xcode 8•Swift 3

extension String {
    var html2AttributedString: NSAttributedString? {
        do {
            return try NSAttributedString(data: Data(utf8), options: [NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType, NSCharacterEncodingDocumentAttribute: String.Encoding.utf8.rawValue], documentAttributes: nil)
        } catch {
            print(error)
            return nil
        }
    }
    var unicodes: [UInt32] { return unicodeScalars.map{$0.value} }
}
let str = "<span>&euro;€</span>".html2AttributedString?.string ?? ""
print(str.unicodes)     // [8364, 8364]


 类似资料:
  • 问题内容: 我正在做一些抓取,并且站点经常使用实体来表示非字符。Python是否有一个实用程序可以接受带有实体的字符串并返回类型? 例如: 我回来了: 代表带有音调标记的。以二进制形式表示为16位01ce。我想将html实体转换为值 问题答案: 标准库自己的具有未记录的函数,它完全按照你的想法执行操作:

  • 问题内容: 如何在Python中将HTML实体转换为Unicode,反之亦然? 问题答案: 您需要有BeautifulSoup。

  • 在我的生产级应用程序中,我正在研究一些与unicode字符相关的问题,比如中文/日语字符串。 我的应用程序有一个启动程序和一个配置文件,它设置了运行JVM可以使用的所有参数。此配置文件作为命令行参数的一部分传递。 所以我创建了一个小程序来测试这个场景,该程序的工作是将一个文件路径作为命令行参数的一部分,打印它并读取该文件的内容。在运行之前,它看起来与上面类似,即“some/path/和/????.

  • 问题内容: 我只想在HTML页面中显示刻度(✔)和十字(✘)符号,但它显示为方框或粘稠度–显然与编码有关。 我已将meta标签设置为显示utf-8,但显然我缺少了一些东西。 编辑/解决方案: 通过使用FireBug所做的评论,我发现页面传递的标题实际上是“ Content-Type:text / html”,而不是UTF-8。使用Notepad ++查看文件格式时,显示我的文件格式为“没有BOM的

  • 问题内容: 在下面查看我的代码。我有一个包含Unicode字符代码的JSON字符串。我将其转换为Java对象,然后将其转换回JSON字符串。但是,您可以看到输入和输出JSON字符串不匹配。是否可以使用Gson将我的对象转换为原始JSON字符串?我想和一样。 问题答案: 不幸的是,Gson似乎不支持它。所有JSON输入/输出分别集中在Gson(从2.8.0开始)和。可以使用其私有方法读取Unicod