zoukankan      html  css  js  c++  java
  • 中文转换成html中的utf-8

    在HTML中,中文的“好好学习”可以表示为 “好好学习”

    在项目中,需要对接短信告警,短信告警返回数据要求是utf8的

    后来继续沟通,才发现要的是html-utf8的;

    没有找到合适的golang工具包,涉及语言转码的包主要有
    mahonia,支持各种格式的数据转换,gbk,utf8,gb2312
    net/html,支持网页转码,改的是转换网页中的<,>,&,',',.

    根据网上经验,提供三个版本的转换

    转换过程

    Javascript

    1 function ConvUtf8(obj) {
    2 return obj.replace(/[^u0000-u00FF]/g, function ($0) { return escape($0).replace(/(%u)(w{4})/gi, "&#x$2;") });
    3 }

    JAVA

     1 public static String UTF8_html_conv(String str){
     2 StringBuffer stbPreemptionArg = new StringBuffer();
     3 for(int i = 0;i<str.length();i++){
     4 if (str.codePointAt(i) > 255){
     5 stbPreemptionArg.append("&#x"+Integer.toString(str.charAt(i), 16)+";");
     6 }else{
     7 stbPreemptionArg.append(str.charAt(i));
     8 }
     9 }
    10 return stbPreemptionArg.toString();
    11 }

    Golang

    func CovertToHtml(src string) string{
        rs := []rune(src)
        htmlUtf8 := ""
        for _, r := range rs {
            rint := int(r)
            if rint < 128 {
                htmlUtf8 += string(r)
            } else {
                 //utf8 = "\u"+strconv.FormatInt(int64(rint), 16)
                htmlUtf8 += "&#x"+strconv.FormatInt(int64(rint), 16) + ";" 
            }
        }
    return htmlUtf8
    }
        
  • 相关阅读:
    关于JVM的一些想法
    hashMap理解以及jdk1.7、jdk1.8其中区别
    各数据库如何实现自增
    dubbo遇坑记录
    mysql建表语句问题
    @Configuration
    生成一个唯一的ID
    门面模式
    关于getClass().getClassLoader()
    元素链
  • 原文地址:https://www.cnblogs.com/Shoudler/p/11819201.html
Copyright © 2011-2022 走看看