Export UTF-8 BOM .csv in R

Ich lese eine Datei durch RJDBC aus einer MySQL-Datenbank und es richtig zeigt alle Buchstaben, die in R (z.B., נווה שאנן).
Aber auch beim Export mit schreiben.csv und fileEncoding="UTF-8" die Ausgabe sieht so aus
<U+0436>.<U+043A>. <U+041B><U+043E><U+0437><U+0435><U+043D><U+0435><U+0446>(in diesem Fall ist dies nicht die Zeichenfolge oben, sondern eine Bulgarische) für Bulgarisch, Hebräisch, Chinesisch und so weiter. Andere Sonderzeichen wie ã,ç usw. funktionieren gut.

Ich vermute, das ist wegen der UTF-8-BOM, aber ich habe nicht gefunden, eine Lösung auf dem Netz

Mein OS ist ein Deutsches Windows 7.

edit: ich habe versucht,

con<-file("file.csv",encoding="UTF-8")
write.csv(x,con,row.names=FALSE)

und der (afaik) entspricht write.csv(x, file="file.csv",fileEncoding="UTF-8",row.names=FALSE).

  • Werden Sie sagen, dass, wenn Sie öffnen Sie die exportierte Datei, die Sie sehen, "U+0436" statt "ж"? Wenn dem so ist, dass keine BOM-Problem, nur eine Frage der Unicode-Codepunkte, nicht kodiert in UTF-Codierung, sondern die Ausgabe als code Punkte. Vielleicht zeigen Sie uns etwas code, wie genau man die Datei exportieren?
  • Fügte ich Informationen, wie ich den Export der Datei. Und ja, ich sehe "<U+0436>" statt "ж"
  • Sehen "<U+0436>" in der Datei mehrdeutig ist (es könnte sogar bedeuten, dass diese Zeichen tatsächlich inline in die Datei oder den editor einfach nicht angezeigt werden können Sie). Entweder Sie schreiben uns die "ж" in eine Datei und teilen Sie uns die hex-Werte der Zeichen die generierte Datei enthält (öffnen Sie Sie im hex-editor), ODER geben Sie uns den code, um Ihr problem reproduzieren (natürlich nicht wir haben deine DB so erstellen Sie einen Vektor mit den sample-Daten).
InformationsquelleAutor Arthur G | 2011-09-13
Schreibe einen Kommentar