[Rd] encoding question again
Matthias Wendel
office at matthiaswendel.de
Thu Dec 27 21:52:40 CET 2007
Hi, simon,
i followed your advice by adding/changing the lines
abt = iconv(abt,"utf-8","latin1")
zz = file( paste("Itemtabelle/Itemtabelle", abt, ".html"), "wt", encoding = "latin1")
but this yielded the same results.
Cheers,
Matthias
-----Ursprüngliche Nachricht-----
Von: Simon Urbanek [mailto:simon.urbanek at r-project.org]
Gesendet: Donnerstag, 27. Dezember 2007 21:40
An: Matthias Wendel
Cc: r-devel at r-project.org
Betreff: Re: [Rd] encoding question again
Matthias,
you get exactly what you specified - namely UTF-8. If you want your html file to be latin1, then you have to say so:
zz = file( paste("Itemtabelle/Itemtabelle", abt, ".html"), "wt", encoding = "latin1")
In addition, you're assuming that `abt' is in the correct encoding to be understood by your OS. If it's not, you better convert it into one.
From your results it seems as if `abt' is also UTF-8 encoded. Since you didn't tell us where you got that from, you should either fix the source or use something like iconv(abt,"utf-8","latin1"):
(in UTF-8 locale)
> abt="nür"
> cat(abt,"\n")
nür
> charToRaw(abt)
[1] 6e c3 bc 72
> charToRaw(iconv(abt,"utf-8","latin1"))
[1] 6e fc 72
Cheers,
Simon
On Dec 27, 2007, at 3:11 PM, Matthias Wendel wrote:
> Hi, R Devils,
> I'm running the actual R version in JGR (version 1.5-8 ).
> Sys.getlocale(category = "LC_ALL") yields [1]
> "LC_COLLATE=German_Germany.1252;LC_CTYPE=German_Germany.
> 1252;LC_MONETARY=German_Germany.
> 1252;LC_NUMERIC=C;LC_TIME=German_Germany.1252"
>
> I want to write some HTML-Code enhanced by statistical results and
> labels encoded in Latin-1, which I pass to a function. Some label
> shall generate the filename. Although the labels are correctly handled
> in JGR they are somehow converted when they are written to the file.
> Also the filename is not constructed as wanted. The function
> definition is correctly sourced into R. The function is defined like
> this:
>
> Itemtabelle.head <- function (abt ){
> # nür zöm TÄST
> zz = file( paste("Itemtabelle/Itemtabelle", abt, ".html"), "wt",
> encoding = "UTF-8")
> cat(as.character("<html
> xmlns:o=\"urn:schemas-microsoft-com:office:office
> \" xmlns:x=\"urn:schemas-microsoft-com:office:excel\"
> xmlns=\"http://www.w3.org/TR/REC-html40
> \"> \n"),
> as.character("
> <
> head
> >
>
> \n "),
> .
> .
> .
> as.character(" <td colspan=5 class=xl28 width=727 style=
> \'width:545pt\'>Gesundheitsindikatoren: "), abt, as.character("</
> td> \n"),
> as.character(" </
> tr
> >
>
> "), file = zz)
> close(zz)
> unlink(zz)
> }
> Setting abt as " Ärzte Innere, Gynäkologie" and calling the function
> with this argument, yields a filename "Itemtabelle Ärzte Innere,
> Gynäkologie .html" and in the file a line
> <td colspan=5 class=xl28 width=727 style='width:
> 545pt'>Gesundheitsindikatoren: Ärzte Innere, Gynäkologie </
> td>
> is generated. .
> I tried to solve this by using iconv, without success.
> The problem remains the same in the rgui and rterm - in rterm the
> resulting filename is "Itemtabelle Žrzte Innere, Gyn„kologie .html".
>
> Cheers,
> Matthias
>
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
More information about the R-devel
mailing list