Konvertieren UCS-2-Datei zu UTF-8 mit PHP

Ich habe eine CSV-Datei geliefert, die von einem client, das muss analysiert werden und eingefügt in eine Datenbank mit PHP.

Vor dem einfügen der Daten in die DB, ich will es konvertieren zu UTF-8, aber ich kann nicht scheinen, um herauszufinden, wie.

Dies ist, was ich habe versucht zu erkennen, die Dateien Codierung:

$ enca -d -L zh ./artigos.txt 
    ./artigos.txt: Universal character set 2 bytes; UCS-2; BMP
    CRLF line terminators
    Byte order reversed in pairs (1,2 -> 2,1)

Ich habe versucht mit der iconv-Funktion, aber es vermasselt die Konvertierung und zeigt das Ergebnis mit den folgenden Zeichen als die Originale.

Erste Zeile der Datei (base64-kodiert):

IgAwADMAMQAxADkAIgAsACIANwAzADEAMwA0ADYAMgA2ADQAMAAwADEANQAiACwAIgBBAGcAcgBhAGYAYQBkAG8AcgAgAFIAYQBwAGkAZAAgADkAIABIAGUAYQB2AHkAIABEAHUAdAB5ACIALAAiAEEAZwByAGEAZgBvACAAOQAvADgALAAgADkALwAxADAALAAgADkALwAxADIALAAgADkALwAxADQAIgAsACIAMQAxADAAZgBsAHMAIgAsACIAIgAsACIAIgAsACIAIgAsACIAMAAzADEAMQA5AC4AagBwAGcAIgAsACIAIgAsACIAMQAsADIAMAAiACwAIgA1ADkALAA5ADAAIgAsACIAMgAiACwAIgAwACIALAAiADAAIgAsACIAMAAiACwAIgAwACIALAAiADAAIgAsACIAMAAiACwAIgAwACIALAAiADAAIgAsACIAMAAiACwAIgAwACIALAAiADAAIgAsACIAMAAiACwAIgAwACIALAAiADAAIgAsACIAMAAiACwAIgAwACIALAAiADAAIgAsACIAMAAiACwAIgAwACIALAAiADAAIgAsACIARgBhAGwAcwBlACIADQAK
extrahieren Sie eine Probe von text, insbesondere ein kleines Stück rund um die Zeichen, die Durcheinander in der Umstellungsphase. Transport zu uns binary safe über base64_encode(). Dann vielleicht kann jemand es identifizieren. Ich vermute, es könnte sein, big-endian?
Jetzt die erste Zeile der Datei die original-Beitrag

InformationsquelleAutor Igor Azevedo | 2012-06-08

Schreibe einen Kommentar