无法在RSS feed中显示法语字符而不会出现编码错误

时间:2011-07-13 02:38:15

标签: xml character-encoding rss

我正在尝试使用示例数据显示RSS源的内容,如下所示:

<?xml version="1.0" encoding="ISO-8859-1"?> 
<rss version="2.0"> 
<channel> 
  <title>NHL.com Nouvelles</title> 
  <link>http://www.nhl.com</link> 
  <description>Nouvelles</description> 
  <copyright>NHL Enterprises, L.P. (c) 2011 NHL. All Rights Reserved</copyright> 
  <language>fr-ca</language> 
  <lastBuildDate>Sun, 31 Jul 2011 21:14:47 EDT</lastBuildDate> 

  <item> 
    <title>L'attaquant Zach Parise signe un contrat d'une 
           saison avec les Devils
     </title> 
    <link><![CDATA[http://www.nhl.com/ice/news.htm?id=585498&cmpid=rss-Nouvelles]]>
     </link>    
    <description><![CDATA[ NEWARK, États-Unis - 
      L'attaquant Zach Parise a accepté un contrat d'une saison avec 
      les Devils du New Jersey.  Lors de l'annonce en fin d'après-midi vendredi, 
      le président et directeur-général des Devils Lou Lamoriello 
      a ajouté que les deux parti...]]>
     </description>
    <pubDate>Fri, 29 Jul 2011 19:04:04 EDT</pubDate> 
    <guid><![CDATA[http://www.nhl.com/ice/news.htm?id=585498]]></guid>
  </item>       

  <!-- other item nodes -->

  </channel> 
</rss>

Feed被编码为 ISO-8859-1 。我尝试过两个脚本来显示我网站上的Feed,但它看起来不正确。我注意到即使在浏览器中查看XML文件时,字符也无法正确显示。

我使用了两种不同的JavaScript解决方案在我的网站上显示Feed,但它们都没有正确显示字符。

有没有人知道任何语言的预构建RSS到HTML脚本会正确编码传入的XML文件?

如果没有,有关我如何正确编码的建议吗?

1 个答案:

答案 0 :(得分:3)

之前我遇到过类似的问题。

您需要更改HTML中的charset

这对我有用。

<meta charset="ISO-8859">

修改

注意到这一点......你的description内容是乱码。您需要在文本编辑器或您用于编码的任何内容中重新输入它。看起来该程序/应用程序损坏了它。可能是没有任何工作原因的一部分。

<description><![CDATA[ NEWARK, États-Unis - 
  L'attaquant Zach Parise a accepté un contrat d'une saison avec 
  les Devils du New Jersey.  Lors de l'annonce en fin d'après-midi vendredi, 
  le président et directeur-général des Devils Lou Lamoriello 
  a ajouté que les deux parti...]]>
 </description>

此外,您应该考虑将法语字符更改为ascii或十六进制值,例如

téléphonique

t&#233;l&#233;phonique