.h Datei öffnen, in Array lade, alle Zeilen zählen, sortieren...

    • Offizieller Beitrag

    Dann so:

    Spoiler anzeigen
    [autoit]


    $sData_h = FileRead(@ScriptDir & '\test.h')
    $aOut_h = StringRegExp($sData_h, '(?:\A|\r\n)#define\s+(\S+?)\s+(\d+),.+/\*(.+),(.+),.+/', 3)
    $sData_c = FileRead(@ScriptDir & '\test.c')
    $aOut_c = StringRegExp($sData_c, '.+\((.+?),\s*(\d+)\);', 3)
    If IsArray($aOut_h) Then
    $hFile = FileOpen(@ScriptDir & '\test_out.csv', 2)
    If $hFile <> -1 Then
    FileWriteLine($hFile, 'Adresse; Bezeichnung; Faktor; Einheit; akt. Wert; Wert1; Wert2; Wert3')
    For $i = 0 To UBound($aOut_h) - 1 Step 4
    $sTmp = ''
    For $j = 0 To UBound($aOut_c) - 1 Step 2
    If $aOut_c[$j] = $aOut_h[$i] Then
    $sTmp = ';' & $aOut_c[$j + 1]
    ExitLoop
    EndIf
    Next
    FileWriteLine($hFile, $aOut_h[$i + 1] & ';' & $aOut_h[$i] & ';' & StringReplace($aOut_h[$i + 2], '.', ',') & ';' & $aOut_h[$i + 3] & $sTmp)
    Next
    FileClose($hFile)
    EndIf
    EndIf

    [/autoit]