xslt не поддерживает зарегистрированный товарный знак - PullRequest
1 голос
/ 24 марта 2011

Как отобразить зарегистрированный символ торговой марки ® с помощью xslt.При преобразовании в xslt он не отображает правильный символ.

 String reg = dirspechars("stackoverflow ®",getspechar()) 

 getspechars()
 {
  spechars.put("®","®")
  }

 <xsl:value-of select="@reg"/>

, и эта строка передается в xsl и преобразуется в html.У меня проблема Недопустимый байт 1 из 1-байтовой последовательности UTF-8.

Когда я кодировал xsl version1.0 и encoding = "utf-8" standalone = "yes", даже если он не отображает правильный символ торговой марки.

Пожалуйста,

Ответы [ 2 ]

4 голосов
/ 24 марта 2011

Попробуйте указать сущность по номеру: &#174;

0 голосов
/ 24 марта 2011

я написал xsl version1.0 и encoding = "utf-8" standalone = "yes" хотя это не отображается правильный символ торговой марки.

Это кодировка проблема результата преобразования потребитель .

Если это браузер (скажем, IE), ничего бы не знал о кодировке UTF-8 и отображал бы ®. Вы должны объявить кодировку. В HTML:

<html>
    <head>
        <META http-equiv="Content-Type" content="text/html; charset=utf-8">
        <title>Output ® test</title>
    </head>
    <body>®</body>
</html>

То, что будет правильно получено в этой таблице стилей:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output encoding="utf-8"/>
    <xsl:template match="/">
        <html>
            <head>
                <title>Output ® test</title>
            </head>
            <body>&#174;</body>
        </html>
    </xsl:template>
</xsl:stylesheet>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...