【发布时间】:2014-01-02 18:24:36
【问题描述】:
由于某些编码问题,我在向数据库插入字符串时遇到问题。
字符串源是外部 rss 提要。 在网络浏览器中看起来没问题。即使在调试器中,文本似乎也可以。 如果我把strong复制到notepad,结果也ok。
但在 notepad++ 中可以看到该字符串正在使用组合字符。 如果更改为 ansii,则会出现两者组合。 例如
á 显示为 a´
(在记事本++中就像有两个字符,在另一个上。我什至可以选择......一半的字符)
我用谷歌搜索了很多,并尝试了非常不同的方法来解决这个问题。 我真的很想找到一种巧妙的方法来将字符串转换为简单的 utf8 数据库兼容的变音符号。
有什么帮助吗? 非常感谢!
【问题讨论】:
-
你能把实际的字符串粘贴到这里吗?
-
当然... "Diálogos sobre cinema português e o cinema do mundo na Gulbenkian" Notepad++ 中只能选择一半字符。
-
这种行为的原因是NotePad++没有在你的电脑中使用正确的编码(不知道为什么,你必须看看它的配置)。根据这篇文章中投票最多的答案 (stackoverflow.com/questions/398621/…),您应该使用 1252 编码。我做了一个测试并且确实有效(使用我的默认编码的奇怪符号和使用这个时的á)。这就是 NotePad++ 奇怪行为的原因,但不确定您要完成什么,您能否解释得更好?
-
我发现问题是提要中的一些字符串使用了组合变音符号。字符 á 是 ́但是我们也可以使用 á 来组合 ´+a (这是一个组合')在字母a之后。我需要找到一种将这种组合变音符号转换为简单实体的方法。
-
这个有什么好看的吗?我也有类似的问题。
标签: c# encoding diacritics