当用户输入阿拉伯名字和口令时,我应该检索我正在使用utf-8编码的user.In java的数据,我应该从我正在使用的database.The数据库is sql server2005中检索阿拉伯文本形式的数据。并且该列被设置为varchar,而不是nvarchar.Since,数据库指向production。我无法将列类型更改为nvarchar。有什么方法可以转换成?从数据库中检索的文本转换为阿拉伯语文本,而无需对数据库进行更改。有人能帮上忙吗。
Bhoomesh
发布于 2009-07-15 07:10:19
在阅读时,将其转换回utf-8。
我不知道这是否可能,但试着谷歌一下。
发布于 2009-07-15 07:17:25
首先,您是如何将文本存储在数据库中的?从根本上讲,这听起来像是你应该改变数据库。如果您正在使用具有非Unicode排序规则的varchar,那么您要么只能存储符合该排序规则的文本,要么必须使用非常不可靠和根本“错误”的转换,这些转换将文本视为二进制数据。
即使在某些情况下可以做到这一点,您也很可能会发现,在其他情况下也会失败。
与您的数据库管理员交谈,解释模式从根本上是错误的-为了支持完整的Unicode,您需要更改模式。你最终还是要经历这一切的,所以你最好在此期间省去麻烦的麻烦。
发布于 2009-07-15 07:03:31
我认为如果存储的字符使用了错误的编码(列是ANSI,输入是UTF8),那么即使有方法,我也不建议您将其转换回UTF8,但最好从数据库端解决它。
https://stackoverflow.com/questions/1129808
复制相似问题