文章主要介绍了中文转换成html中的utf-8的方法,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

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

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

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

没有找到合适的golang工具包,涉及语言转码的包主要有

mahonia,支持各种格式的数据转换,gbk,utf8,gb2312

net/html,支持网页转码,改的是转换网页中的<,>,&,',',.

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

Javascript

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

JAVA

public static String UTF8_html_conv(String str){
StringBuffer stbPreemptionArg = new StringBuffer();
for(int i = 0;i<str.length();i++){
if (str.codePointAt(i) > 255){
stbPreemptionArg.append("&#x"+Integer.toString(str.charAt(i), 16)+";");
}else{
stbPreemptionArg.append(str.charAt(i));
}
}
return stbPreemptionArg.toString();
}

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
}

总结

以上所述是小编给大家介绍的中文转换成html中的utf-8的方法,希望对大家有所帮助!