Jak kodować znaki, aby były polskie literki?
Mam pliki:
example.xml
<?xml version="1.0" encoding="iso-8859-2"?> <?xml-stylesheet type="text/xsl" href="example.xslt"?> <osoby> <osoba> <imie>Łużyckaś</imie> <nazwisko>Nowicka</nazwisko> </osoba> <osoba> <imie>Jan</imie> <nazwisko>Kowalski</nazwisko> </osoba> </osoby>
example.xslt
<?xml version="1.0" encoding="iso-8859-2"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" /> <xsl:template match="/"> <html> <head> <title>Dokument XML</title> </head> <body> <h1>Spis osób</h1> <table> <tr><th>Imię</th><th>Nazwisko</th></tr> <xsl:for-each select="//osoba"> <tr> <td class="nazwisko"><xsl:value-of select="nazwisko" /></td> <td class="imie"><xsl:value-of select="imie" /></td> </tr> </xsl:for-each> </table> </body> </html> </xsl:template> </xsl:stylesheet>
Jednak wyniki zwracane zawierają krzaczki (przy iso-8859-2) zamiast polskich liter (np. ś), natomiast przy kodowaniu utf-8 oprócz krzaczków, na początku dokumentu też się coś pojawia (jakieś krzaczki).
Jak w xslt dam znacznik meta określający kodowanie, to nie zmienia on sytuacji.