go去掉u0000字符

go去掉u0000字符,第1张

概述在Aes对称加密时,解密的字符串中有u0000无关字符,是由转码算法产生的buff无关位。怎样把其清除呢?参考资料:https://www.dazhuanlan.com/2020/06/02/5ed65c0e844fb/参考资料中使用unicode.IsLetter(v)&&!unicode.IsDigit只能判断字符和数字,如果字符串内存在特殊符号也会过滤掉,

在Aes对称加密时,解密的字符串中有u0000无关字符,是由转码算法产生的buff无关位。

怎样把其清除呢?

参考资料:https://www.dazhuanlan.com/2020/06/02/5ed65c0e844fb/

参考资料中使用unicode.IsLetter(v) && !unicode.IsDigit只能判断字符和数字,如果字符串内存在特殊符号也会过滤掉,是错误的。

[]rune()可将字符串转成int数值,其值是ascii编码值(有可能不是ascii,与其类似),u0000对应的值为0。

正确代码是:

func rmu0000(s string) string {   str := make([]rune, 0, len(s))   for _, v := range []rune(s) {      if v == 0 {         continue      }      str = append(str, v)   }   return string(str)}

 

总结

以上是内存溢出为你收集整理的go去掉u0000字符全部内容,希望文章能够帮你解决go去掉u0000字符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1225575.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-05
下一篇 2022-06-05

发表评论

登录后才能评论

评论列表(0条)

保存