UTF-8 mit BOM-Unterstützung bei _FileWriteFromArray

  • Hallo,

    ich schreibe eine Textdatei mit "_FileWriteFromArray".
    Das klappt auch perfekt, nur dass die Textdatei nicht UTF-8 mit BOM kompatibel ist.
    Das heißt, in dem Programm mit der ich es öffne sind die Umlaute sind kryptische Zeichen und werden nicht korrekt dargestellt.
    Notepad plus plus zeigt ein, dass Sie UTF-8 without BOM ist.
    Gibt es eine Möglichkeit die entstehende Datei UTF-8 mit BOM zu erstellen?

    Danke

    Code
    _FileWriteFromArray($sFilePath, $Text, 1)
  • Halt @hevilp,
    du kannst nicht einfach den FileOpen-Modus in den _FileWriteFromArray-Befehl schreiben.

    Nimm es mir das Folgende nicht krumm, ich habe keinen Bock auf eine Wiederholung eines anderen Threads.. Aber:
    Du musst noch an deinem Grundverständnis arbeiten. Schaust du in die Hilfe? Wahrscheinlich ja. Nimm dir dafür aber mehr Zeit.

    Nehmen wir das Bsp.:
    Hier siehst du den Befehl mit seinen Komma getrennten, notwendigen und optionalen Parametern.

    AutoIt
    _FileWriteFromArray ( $sFilePath, Const ByRef $aArray [, $iBase = Default [, $iUBound = Default [, $sDelimiter = "|"]]] )

    Wenn du jetzt schreibst:

    AutoIt
    _FileWriteFromArray($sFilePath, $Inhalt, 1, 128)

    Dann ist 128 der vierte Parameter des Befehls - also $iUBound! Das war sicher nicht dein Plan.

    In der Hilfe steht: To use other write modes, like append or Unicode formats, open the file with FileOpen() first and pass the file handle instead.

    Du sollst die Datei also mit FileOpen öffnen/erstellen und das Filehandle in _FileWriteFromArray benutzen.

    Also:
    1. $hFilePathFromFileOpen = FileOpen ( "filename" [, mode = 0] )
    2. _FileWriteFromArray ($hFilePathFromFileOpen, $Inhalt)
    (3. FileClose ( "$hFilePathFromFileOpen" ) )

    Grüße autoiter