Unicode Datei erstellen



  • n'Abend,

    wie schon oben steht, ist die Frage: wie kommt der BOM in das neue Textfile?
    Bitte entschuldigt dass ich keinen Code poste, aber ich sitz schon zu lang dran, und was ich da sehe will und kann ich keinem zumuten 😮
    Müsste auf jeden Fall was mit wchar_t sein, oder bin ich hier schon auf dem WoodWay?

    Oder hat der BCB 2007 Pro schon diese Funktionalität? Nur weil ich nix finde bedeutet es nicht, dass es nicht da ist 😉

    grüssle 🙂



  • Wie schreibst du denn deine Textdatei?



  • Braunstein schrieb:

    Wie schreibst du denn deine Textdatei?

    std::wofstream outFile;
      outFile.open( fName.c_str(), ios::out );
      //hier sollte dann - als erstes - der BOM geschrieben werden
    
      for( int j = 0; j < ccVect.size(); j++ )
      {
    	  wStr = ccVect.at(j);
    	  if( wStr.IsEmpty() )
    		  outFile.write( &ln, 1 );
    	  else
    	  {
    		  outFile.write( wStr.c_bstr(), wStr.Length() );
    		  outFile.write( &ln, 1 );
    	  }
      }
    

    wStr = WideString

    grüssle 🙂



  • Hallo Smitty,

    versuch mal:

    outFile.write( wStr.c_bstr(), wStr.Length() * sizeof(wchar_t));
    

    Gruß Peter



  • Peter24 schrieb:

    Hallo Smitty,

    versuch mal:

    outFile.write( wStr.c_bstr(), wStr.Length() * sizeof(wchar_t));
    

    Gruß Peter

    Dann schreibt er nur die erste von 806 Zeilen 😞
    Der BOM muss also rein.

    Habs jetzt folgendermassen:

    const wchar_t bom = 0xFFFE;
      outFile.write( &bom, sizeof(wchar_t) );
    

    Wenn ich's so mache, gibts ne leere Datei.

    grüssle 🙂


Anmelden zum Antworten