5

当我在 Umbraco 4.7.1 中将其作为文本字符串数据类型插入时,我在前端显示字符 š 和 ž 时遇到问题。Umbraco 使用 MySql 数据库。

我注意到当我使用富文本编辑器保存这些字符时,这不是问题。我查看了数据库,所有富文本编辑器值都存储在 CDATA 内的 XML 中,但文本字符串数据类型不在 CDATA 内。

所有其他波斯尼亚特定字符 (čćđ) 的 html 编码为 čćđ 但 š 和 ž 保存为 s 和 z。

当我尝试将 textstring 数据库数据类型更改为 ntext 而不是 varchar 时,它可以工作(因为它存储在 CDATA 中)但我不能这样做,因为那样我将丢失所有现有数据。

我的 HTML 编码字符集是 iso-8859-1。

在这里做什么?

4

3 回答 3

7

有趣的是,我最近正在和某人讨论克罗地亚字母表(在非计算环境中),他们给了我一个链接的宝石,其中就克罗地亚字母表说明了以下内容:

8 位 ISO 8859-2 (Latin-2) 标准由 ISO 开发。1

ISO 8859-1 2仅部分支持使用相似字符集的语言,
ISO 8859-2 3则完全支持波斯尼亚语、克罗地亚语和许多其他语言。

更改编码应该可以解决问题。

1 http://en.wikipedia.org/wiki/Gaj%27s_Latin_alphabet#Computing

2 http://en.wikipedia.org/wiki/ISO_8859-1

3 http://en.wikipedia.org/wiki/ISO_8859-2

于 2012-09-24T10:52:01.860 回答
0

过了一会儿,我发现我可以使用默认编码(UTF8),但我必须更改数据库排序规则。因此,我更改了每个具有 varchar 或 ntext 的表的排序规则,现在它可以完全正常工作,这是我迄今为止找到的最佳解决方案。

于 2013-12-06T00:31:37.913 回答
0

实际上 windows-1251 有帮助。它对想要的字符进行编码。

于 2012-09-26T08:27:01.787 回答