特殊字符,如Emoji表情Base64存储到数据库


   有些特殊字符,如Emoji,存储到oracle数据库就会变成乱码,解决方案就是Base64转码后存储到数据库,取出后再解码传输,经过验证是可以的。

 

  • 编码存储,接收参数转json再.ToString(),不影响效果
//获取参数

JObject pramas = JObject.Parse(context.Request.Params("params"));

string comments = pramas["COMMENTS"].ToString();

byte[] commBytes = System.Text.Encoding.Default.GetBytes(comments);

//转成 Base64 形式的 System.String  

string commentsBase64 = Convert.ToBase64String(commBytes);

 

  • 取出解码,赋值给DataRow,再转json传送到客户端,可正常显示
byte[] commBytes = Convert.FromBase64String(row["COMMENTS"].ToString());

row["COMMENTS"] = System.Text.Encoding.Default.GetString(commBytes);

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM