是否可以检查字符串编码?

时间:2011-11-08 10:14:34

标签: c# .net sql-server-2005

在我的应用程序中,我将一些文本从用户在网站上传的文件导入数据库。 数据库SQL Server 2005,文本存储nvarchar列,我使用EF和L2SQL。

用户应该使用UTF-8制作文件,但不幸的是其中一些显然使用了不同的编码。结果一些字符无效。

我想找到哪些记录有效。我使用 utf8checker 。它适用于原始文件,但是当文本来自数据库IsUtf8时,方法始终返回true。

1 个答案:

答案 0 :(得分:1)

我认为SQL服务器将始终将Unicode存储为UCS-2。因此,您需要确保数据在插入时而不是读取时具有正确的编码。否则SQL服务器会为你加载它,我认为在插入数据后没有办法确定原始编码 - 除非你在记录本身有编码定义,比如另一列或前几个字符您的数据元素。例如。 - XML就是这样做的。

希望这会有所帮助。