fopen -> aus UTF-8 in ISO 8859-2 machen
Georg
- internationalisierung
- php
- programmiertechnik
0 Tabellenkalk0 TS
0 TS1 dedlfix
Moin,
ich erzeuge in PHP eine CSV-Datei (fopen), diese liegt im Format UTF-8 vor. Das Problem was ich nun habe ist das ich diese aber im Format ISO 8859-2 benötige damit selbige in Exel geöffnet werden kann. Wie kann ich dieses am sinnvollsten erreichen?
VG
Hallo,
damit selbige in Exel geöffnet werden kann. Wie kann ich dieses am sinnvollsten erreichen?
utf8 in Excel öffnen. Oder wie alt ist dein Excel?
Gruß
Kalk
Hello,
Hast Du das auch mal als Webressource ausprobiert?
Das habe ich bisher immer nur Erfolg gehabt, wenn man für die Feldtrenner Tab, und nicht Komma oder Semikolon benutzt. Und da es schon eine Weile her ist, (Excel 2003), hatte ich ohnehin noch ISO-8859-1, was aber keine Probleme gemacht hat.
Hallo,
damit selbige in Exel geöffnet werden kann. Wie kann ich dieses am sinnvollsten erreichen?
utf8 in Excel öffnen. Oder wie alt ist dein Excel?
Gruß
Kalk
Liebe Grüße
Tom S.
Hello,
brauchst Du da nicht eher Windows-1252?
Und dann sollten dir die Konvertierfunktionen helfen.
Ich würde die Datei einmal mit fgetcsv() einlesen und Zeile für Zeile konvertiert wieder wegschreiben.
Da die Codepoints der Steuerzeichen aber alle unter 128 liegen sollten. könnte man vielleicht sogar die komplette Datei als String konvertieren. Das habe ich jetzt aber nicht ausprobiert (Tablet).
Liebe Grüße
Tom S.
Moin,
das Problem liegt darin das der KD die Datei in seinem Exel öffnen will - und weil das noch nicht reicht es ist soweit mir bekannt ist ein Wirtschaftinformatiker mit Mac/Exel-Kombi… Von daher sehe ich nur den sinnvollsten Weg die Datei direkt in "seinem" Lieblingsformat anzulegen. "wenn ich das in phpmyadmin mit iso... klappt das" :-(
VG
Hello,
dann schieb doch mal testhalber die komplette Datei (als String) durch iconv() und berichte, ob das klappt.
Liebe Grüße
Tom S.
Von daher sehe ich nur den sinnvollsten Weg die Datei direkt in "seinem" Lieblingsformat anzulegen.
Nein. Sinnvoll sind kompatible Datenaustauschformate einschließlich einer Zeichenkodierung die einen plattform- und sprachunabhängigen Datenaustausch unterstützt: UTF-8
soweit mir bekannt ist ein Wirtschaftinformatiker mit Mac/Exel-Kombi…
Ich frag mich was der gelernt hat wenn er mit UTF-8 nicht zurechtkommt.
MfG
Hello,
soweit mir bekannt ist ein Wirtschaftinformatiker mit Mac/Exel-Kombi…
Ich frag mich was der gelernt hat wenn er mit UTF-8 nicht zurechtkommt.
Frag doch lieber, ob sein Excel schon abgeschrieben ist [1].
Und unter dem Gesichtspunkt der Gewinnmaximierung kann man eine alte Technik ohne Weiteres solange einsetzen, wie sie fehlerfrei in kürzest möglicher Zeit genau das leistet, was man braucht.
[1] Die meisten Finanzämter vertreten die Meinung, dass Software erst mittels Sonderabschreibung abgeschrieben werden darf, wenn sie endgültig außer Betrieb genommen wird...
Liebe Grüße
Tom S.
Hi lieber Tomtom,
UTF-8 ist alte Technik.
Der Euro-Patch für MSosse ist mindestens 20 Jahre alt, da hatte ich noch NT4 auf meiner Kiste 😉
Pff. Freecell statt Excell!!!
Tach!
Ich würde die Datei einmal mit fgetcsv() einlesen und Zeile für Zeile konvertiert wieder wegschreiben.
In dem Fall müsstest du sie Zeile für Zeile und Wert für Wert konvertieren.
Da die Codepoints der Steuerzeichen aber alle unter 128 liegen sollten. könnte man vielleicht sogar die komplette Datei als String konvertieren. Das habe ich jetzt aber nicht ausprobiert (Tablet).
Die Trennzeichen sind auch Zeichen, und selbst wenn sie außerhalb von ASCII lägen, müssten sie in der Zielkodierung gespeichert werden. Insofern ist es kein Problem, die Datei in einem Stück zu konvertieren.
dedlfix.
Moin,
werde es jetzt einmal mit iconv probieren und dem KD so bereitstellen. Das Ergebnis werde ich dann hier einmal posten.
Manchmal habe ich den Eindruck das ich nur "Kunden aus der Hölle" habe… "Das habe ich schon mal gesehen...", "bei XYZ geht das auch", "wiso kann man die transparente Linie nicht blau machen..." 😟 Ich sollte ein Buch schreiben…
Vielen Dank & LG
@@Georg
Manchmal habe ich den Eindruck das ich nur "Kunden aus der Hölle" habe…
"wiso kann man die transparente Linie nicht blau machen..." 😟
Du bist schließlich der Experte.
Ich sollte ein Buch schreiben…
Na so was?
LLAP 🖖
Hello,
Die zeilenweise Umkodierung mit fgetcsv() kann notwendig sein, wenn die Feldtrenner durch Tabs ersetzt werden müssen.
Da die Codepoints der Steuerzeichen aber alle unter 128 liegen sollten. könnte man vielleicht sogar die komplette Datei als String konvertieren. Das habe ich jetzt aber nicht ausprobiert (Tablet).
Die Trennzeichen sind auch Zeichen, und selbst wenn sie außerhalb von ASCII lägen, müssten sie in der Zielkodierung gespeichert werden. Insofern ist es kein Problem, die Datei in einem Stück zu konvertieren.
Stimt auch ;-)
Liebe Grüße
Tom S.
Tach!
ich erzeuge in PHP eine CSV-Datei (fopen), diese liegt im Format UTF-8 vor. Das Problem was ich nun habe ist das ich diese aber im Format ISO 8859-2 benötige damit selbige in Exel geöffnet werden kann.
Hast du es mal mit Voranstellen der UTF-8-BOM probiert?
dedlfix.
Moin,
also die Umwandlung (hierbei komplett, d.h. ich jage den gesamten String auf einmal durch die Umwandlung) hat mit iconv("UTF-8", "ISO-8859-2//TRANSLIT", $orgtxt); das gewünschte Ergebnis gebracht, d.h. das die erzeugte CSV in Exel direkt geöffnet werden kann.
Vielen Dank für eure Hilfe!
VG
Hast du es mal mit Voranstellen der UTF-8-BOM probiert?
Hallo, ja, auch das hatte ich schon durch, leider ist die Kombi Wirtschaftsinformatiker, Mac und Exel eine wirklich d******e Situation. VG