fopen



  • Hallo zusammen,

    ich habe mal wieder ein Problem.
    Es geht um die C Funktion fopen.

    Gibt es unter UNIX/LINUX eine UNICODE-fähige Variante?
    Wenn ja wie heisst die Funktion.

    Danke schon mal für die schnelle Hilfe.

    Bye Peter.



  • Hi,

    sorry, das es keine Antwort ist, aber was hat fopen mit UNICODE zu tun?

    mfg
    v R



  • normaler Weise hat eine Datei (und ihr öffnen) erst mal nichts mit ASCII, Unicode oder anderen Zeichen-Codierungen zu tun. Eine Datei ist eine Folge von Bytes, und diese Folge erhältst Du, nachdem Du die Datei mittels fopen geöffnet hast. Der Inhalt einer Datei ist nun eine Interpretatiossache. Wenn es sich um eine Textdatei handelt, die in Unicode vorliegt, ist es Deine Aufgabe, die BYTES richtig zu interpretieren.

    Gruss,

    Wischmop



  • Hallo ich nochmal.

    Es geht ja auch nicht um die Datei sondern um den Dateinamen.
    Was ist wenn eine Dateiname in z.B. China UNICODE Zeichen verwendet.
    Da man der Funktion fopen nur char* als Dateiname übergibt kann es
    doch sein das das nicht funktioniert oder?

    Unter Win32 gibt es eine fopen Funktion:

    // Nur unter Win32 verfügbar
    FILE *_wfopen( const wchar_t *filename, const wchar_t *mode );
    

    der man den Dateinamen und den Modus als UNICODE String übergibt.
    Wenn das sinnlos ist hätte das Microsoft bestimmt nicht gemacht oder?
    Ich möchte mit meiner Bibliothek Plattformunabhängig bleiben,
    deshalb suche ich eine fopen Funktionalität unter UNIX/LINUX.

    Danke nochmal für eure Hilfe.

    Bye Peter.



  • Eigentlich müsste es irgend wo so eine Funktion geben, da ja zB. der Linux Kernel auch Erweiterungs Zeichensätze für die Dateisysteme zur Verfügung stellt.

    Die Funktion weiss ich leider nicht. Vielleicht wird ja auch irgend wie der UNICode auf das char Array gemapped oder so.



  • Unter Unix benutzten alle Programme die Dateien öffnen den Syscall open(2) -- zumindest indirekt.
    Die 'Lösung' dieses Unicode-Problems ist gewöhnlich irgendwie mit Encodings und Locales und sonstnochwas rumzuspielen ...



  • @alle,

    danke für die schnelle Hilfe.
    Ich werde jetzt ein wenig damit rumspielen.
    Wenns ich es nicht hinbekomme, melde ich mich nochmal.

    Bye Peter.



  • Gut, das wär sicher was interessantes für die FAQ. Hab auch mit Google noch keine genaueren Informationen gefunden 😞


Anmelden zum Antworten