Aus Text datei lesen und zeile neu schreiben...

  • Hi, ich will gerne ein script machen, das jede zeile einzelnt ausliest und sie wieder in die zeile schreibt, nur mit einem unterschied...er soll diese zeilen nummerieren.. z.B.
    1: Hallo
    2: Hallo1 etc..
    Das einlesen ist nicht das prob, nur das neun schreiben in der richtigen Zeile.. mit FileWritLine geht es leider nicht..

    [autoit]

    for $i = 1 to 9
    FileReadLine("test.txt",$i)

    [/autoit][autoit][/autoit][autoit]

    next

    [/autoit]
  • Spoiler anzeigen
    [autoit]

    for $i = 1 to 9
    $a=FileReadLine("test.txt",$i)
    FileWrite("Testnummeriert.txt",$i&$a&@CRLF)
    next

    [/autoit]


    :rock:

  • Code
    Dim $i_Count = 1, $s_Line, $s_Result
    While 1
    $s_Line = FileReadLine( 'test.txt', $i_Count)
    If @error Then ExitLoop
    $s_Result = $s_Result & $i_Count & @CRLF
    $i_Count += 1
    WEnd
    FileDelete( 'test.txt' )
    FileWrite( 'test.txt', $s_Result )

    So werden alle Zeilen gelesen und nummeriert in gleiche Datei geschrieben

  • hahaha wer ist denn da auch im board :PPPP

    wenn du nen funzenden obfuscator basteln willst vergiss es ^^

    allerdings hier:


    Spoiler anzeigen


    #include <Array.au3>
    dim $x = 0,$text[1]

    $write = FileOpenDialog("Open",@WorkingDir,"Text (*txt)")
    $h_read = fileopen($write,0)
    while true
    $x = $x+1
    $line = filereadline($h_read ,$x)
    if @error = -1 then exitloop
    _arrayadd($text, $line)

    wend
    _ArrayInsert($text,0,$x)
    fileclose($h_read)
    $file_new = FilesaveDialog("Save,@WorkingDir,"Text (*txt)")
    $h_write = fileopen("neu.txt",1)
    for $y = 1 to $text[0]
    filewrite($h_write,$y&". "&$text[$y]&@crlf)
    next
    fileclose($h_write)

    ps: ehm Gun-Food , wenn ich die autoit tags nutzen will kommt nur das hier 0o

    [autoit]

    #include <Array.au3>
    dim $x = 0,$text[1]

    [/autoit][autoit][/autoit][autoit]

    $write = FileOpenDialog("Open",@WorkingDir,"Text (*txt)")
    $h_read = fileopen($write,0)
    while true
    $x = $x+1
    $line = filereadline($h_read ,$x)
    if @error = -1 then exitloop
    _arrayadd($text, $line)

    [/autoit][autoit][/autoit][autoit]

    wend
    _ArrayInsert($text,0,$x)
    fileclose($h_read)
    $file_new = FilesaveDialog("Save,@WorkingDir,"Text (*txt)")
    $h_write = fileopen("neu.txt",1)
    for $y = 1 to $text[0]
    filewrite($h_write,$y&". "&$text[$y]&@crlf)
    next
    fileclose($h_write)

    [/autoit]

    Einmal editiert, zuletzt von azunai (1. April 2008 um 16:30)

    • Offizieller Beitrag

    Hi,

    Spoiler anzeigen
    [autoit]

    #include<File.au3>
    #include<Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    _setLineNr(@ScriptDir & '\provider.txt')

    [/autoit] [autoit][/autoit] [autoit]

    Func _setLineNr($path)
    If Not FileExists($path) Then Return SetError(1, 0, -1)
    Local $lines_A
    If Not _FileReadToArray($path, $lines_A) Then SetError(2, 0, -1)
    Local $count = StringLen(_FileCountLines($path))
    For $i = 1 To UBound($lines_A) - 1
    $lines_A[$i] = StringFormat('%0.' & $count & 'd', $i) & ': ' & $lines_A[$i]
    Next
    If _FileWriteFromArray($path, $lines_A, 1) Then Return 1
    Return SetError(3, 0, -1)
    EndFunc ;==>_setLineNr

    [/autoit]

    Mega