Używam wersji 2.15.0 w systemie Windows 7 w wersji 64-bitowej. Chciałbym wypisać tekst Unicode (CJK) do pliku.Plik wyjściowy pliku UTF-8 w R
Poniższy kod pokazuje jak Unicode wysyłane pisać na UTF-8 połączenia plików nie działa jak (I) oczekuje:
rty <- file("test.txt",encoding="UTF-8")
write("在", file=rty)
close(rty)
rty <- file("test.txt",encoding="UTF-8")
scan(rty,what=character())
close(rty)
Jak pokazano przez wyjście skanowania:
Read 1 item
[1] "<U+5728>"
Plik nie został napisany z samym znakiem UTF, ale z pewnym zastępczym zgodnym z ANSI. Czy mogę sprawić, aby działał poprawnie za pierwszym razem (tzn. Z plikiem tekstowym, który zamiast tego zawiera "在"), czy mogę wykonać dodatkową magię, aby przekonwertować wyjście do Unicode z odpowiednim znakiem zastępującym ciąg znaków?
Dzięki.
[Więcej informacji: ten sam kod zachowuje się odpowiednio w Cygwin, R 2.14.2, a 2.14.2 na Win7 również jest uszkodzony. Jest to na moim końcu gdzieś?]
[Aktualizacja z opóźnieniem] Problemy dotyczą raczej * locale * niż kodowania. Rozwiązałem problemy z błędami wyjściowymi, tymczasowo zmieniając ustawienia narodowe na "odpowiednie". Boże, pomóżcie, jeśli macie dane językowe z więcej niż jednego języka. – Patrick
Może to [post] (http://stackoverflow.com/questions/11069908/r-extracting-clean-utf-8-text-from-a-web-page-scraped-w-rcurl?lq=1) Wsparcie. – DJJ