Daten in CSV schreiben

  • Moin Moin,

    Ich habe mal wieder ne Frage und zwar. Wie kann ich Texte in die CSV schreiben ? (Also mit Autoit :D)
    Filewrite wäre ne möglichkeit, jedoch leider ohne erflog getest. Da mein nicht die Position angeben kann.

    [autoit]


    $ha = FileOpen($csvFile, 1)
    Dim $arCSV

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

    _FileReadToArray($csvFile, $arCSV)
    For $i = 1 To $arCSV[0]
    $arCSV[$i] = StringSplit($arCSV[$i], ";")
    Next

    [/autoit]

    Auslesen du ich damit das klapt auch wunderbar.

    Beispiel tabelle

    a1;b1;c1;d1;e1
    a2;b2;c2;d2;e2
    a3;b3;c3;d3;e3
    a4;b4;c4;d4;e4

    Wenn ich nun b2 ändern will, wie mach ich das ?

    Lg
    Fireman-Hamburg

  • danke das hilft mit leider, nicht viel weiter. Da ich das scripte soweit fertig habe und jetzt halt nur noch daten rein schreiben muss.


    Du kannst dir doch die Technik von funkey anschauen und umsetzen ==> alles in ein Array einlesen, im Array ändern, Array komplett abspeichern,

    mfg (Auto)Bert


  • Du kannst dir doch die Technik von funkey anschauen und umsetzen ==> alles in ein Array einlesen, im Array ändern, Array komplett abspeichern,

    mfg (Auto)Bert


    hi,

    danke für deine Hilfe kannst du vielleicht noch ein beispiel machen ?

    Der Code Funkey war endloslang. Da ich mich nicht gut mit Autoit auskenne. Habe ich keine Stelle entdeckt wo es passen könnte..

    lg
    Fireman

  • halo fireman-HH,

    danke für deine Hilfe kannst du vielleicht noch ein beispiel machen


    hier:

    Spoiler anzeigen
    [autoit]

    #include <File.au3>
    #include <array.au3>

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

    $csvFile = @ScriptDir & "\fireman.csv"
    Dim $arCSV

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

    _FileReadToArray($csvFile, $arCSV)
    _ArrayDelete($arCSV,0)
    $aItem = StringSplit($arCSV[1], ";", 2)
    $i = UBound($arCSV)
    $j = UBound($aItem)
    Dim $aNew[$i][$j]
    _SplitInArray($arCSV, $aNew, ";")
    _ArrayDisplay($aNew)
    $aNew[1][1] = "X=U??"
    _ArrayDisplay($aNew)
    _SaveArray($csvFile, $aNew)

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

    Func _SplitInArray($arCSV, ByRef $aNew, $sep = ";")

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

    For $i = 0 To UBound($arCSV) - 1
    $aItem = StringSplit($arCSV[$i], $sep, 2)
    For $j = 0 To UBound($aItem) - 1
    $aNew[$i][$j] = $aItem[$j]
    Next
    Next
    EndFunc ;==>_SplitInArray

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

    Func _SaveArray($sFileName, ByRef $aNew, $sep = ";")
    Local $s, $hFile = FileOpen($sFileName, 10)

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

    For $i = 0 To UBound($aNew) - 1
    For $j = 0 To UBound($aNew, 2) - 1
    $s &= $aNew[$i][$j]
    if $j <> (UBound($aNew, 2) - 1 )Then $s &= $sep
    Next
    $s &= @CRLF
    Next
    FileWrite($hFile, $s)
    FileClose($hFile)
    EndFunc ;==>_SaveArray

    [/autoit]

    mfg (Auto)Bert