我的网站可能同时收到Unicode和非Unicode字符

我网站上的用户可能会在包含阿拉伯语和英语字符的项目上添加评论。有时可能只是阿拉伯语,有些只是英语,有些是法语! 这是一个国际网站,你不能指望我的应用程序中存储的字符。 我的网站与Facebook无关,但我需要我的评论'TextBoxes能够接受并显示任何语言的任何字符! ......那你怎么认为我能做到这一点?     
已邀请:
.NET中的所有字符串都是unicode字符串(有关更多信息,请参阅
String
类的文档)。因此,从用户那里获取混合语言的输入应该不是问题。 如果您计划将此信息存储在数据库中,则需要确保数据库列的类型为
nchar
nvarchar
。正如其他人指出的那样,当您从SSMS对这些列运行查询时,您需要使用
N
为Unicode字符串添加前缀,以确保它们得到正确处理。从代码执行查询时,您应该使用参数化查询(或ORM,这可能会更好),ADO.NET将负责为您正确构建查询。     
这里有两个要素: 显示字符 - 这是在用户端处理的,如果缺少某些东西,结果会变得粗糙,但是你不能影响那个 您可以影响的是您在数据库中保存字符的方式 - 无论输入如何,都将所有内容转换为utf-8。任何流行的浏览器都能够渲染utf-8。     
如果您在网页和数据库上使用Unicode作为字符集,那么您不必担心用户来自哪里,因为他们都会在您的文本框中键入unicode。     
首先,请确保您的数据库中存储数据的字段可能是unicode charactters将这些字段更改为Nvarchar而不是varchar 而你必须知道NVarchar占用了行的双倍值 恩。 sqlserver中的最大行大小为8000个字符 这意味着当你创建一个字段nvarchar并使其成为4000意味着你已经采取了所有8000字符 其次,根据语言用户选择浏览,在你的代码或页面中设置你的字符集 从网址读取,如http://website.tld/ar/
<meta http-equiv="Content-Language" content="ar" >
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" >
因此,根据更改语言,您可以更改页面的元标记 就是这样 并根据您的语言进行更改 问候     

要回复问题请先登录注册