韩文数据库存取乱码解决方案

这段时间客户提出要将发布韩文的需求,蛮麻烦的,解决了存入数据库和显示的问题,但是数据修改的时候很麻烦,虽然问题不大,但是很恼人,找了一天了,还是没有很好的解决方案,就自己写了一个,问题是解决了,但是个人认为肯定还有更好的解决方案,希望各位不吝赐教!

一、韩文存入数据库解决方案

1.数据库存储多语言的字段要用NText or Nvarchar,才支持多语言,以unicode存储
2.Sql语句如 insert table (a) values(N'value')才可以,update也同样了
3.web页面要用utf-8编码,最好加上<META http-equiv="Content-Type" content="text/html; charset=Unicode">


二、显示数据库中的韩文

韩文存到数据库中,HTML格式的如:& # 5 1 0 6 4 ;& # 5 3 5 5 2 ;& # 4 5 3 6 7 ; (인터넷 )
我添加到数据库中,显示的时候没有问题,因为用HTML控件就可以解决了,如:DIV,总之在HTML格式下面就能解决的。

三、修改数据库中的韩文

修改数据库中的韩文分二种情况:
1、HTML编辑器:这个就是支持HTML的,所以根本不需要理会就可以直接转换,不需要我们操心
2、对于标题之类的短的文字,我们采用的TextBox中就出现了大问题,他显示不了韩文显示的效果是& # 5 1 0 6 4 ;& # 5 3 5 5 2 ;& # 4 5 3 6 7 ;(인터넷 ),这个我找了很久的解决的方案,都没有解决的。
具体方案如下:
只要TextBox支持HTML格式就OK了,但偏偏TextBox只支持纯文本,HTMLEnCode、HTMLDeCode函数无计可施。

此时我采用一个使用HTML作为中转的方案暂时解决了修改韩文的问题
步骤:
1 前台建立一个服务器端DIV:<div id="txtChg" runat="server"></div>
2 后台将HTML格式数据赋值到DIV上
txtChg.InnerHtml = Dr["sContent"].ToString();
3 隐藏Div:txtChg.Attributes["style"] = "display:none";
4 前台将Div的数值赋给TextBox:οnlοad="javascript:document.getElementById('txtTitle').value = document.getElementById('txtChg').innerHTML"

OK,就这样暂时解决了这个烦人的小问题,如果哪位仁兄有更好的方案,请指教!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值