cetinasik Geschrieben 29. Dezember 2009 Geschrieben 29. Dezember 2009 Hallo, hat jemand vielleicht eine Idee, habe ein kleines Problem. ich habe eine Exceldatei. Diese Exceldatei beinhaltet n Zeilen. Ich möchte nun jede Zeile lesen und in einer separaten Datei abspeichern. Dabei soll der Dateiname auch automatisch generiert werden. Dankeschön Zitieren
bigvic Geschrieben 29. Dezember 2009 Geschrieben 29. Dezember 2009 Poste doch mal was du bislang in welcher Sprache programmiert hast. Wenn du Syntax- oder Logikgprobleme hast, kann dir hier bestimmt geholfen werden. Zitieren
cetinasik Geschrieben 29. Dezember 2009 Autor Geschrieben 29. Dezember 2009 Programmiert habe ich noch nichts, meine bisherige Idee sieht aber so aus: 1. Excel Datei als csv-Datei abspeichern 2. csv datei in ein zweidimensionales array speichern (a [n][m] ) 3. zeile 1 auslesen, also a[0][0] bis a[0][m] und in eine datei abspeichern Punkt drei solange wiederholen bis es keinen keine zeile mehr gibt. ich hab mal bei autoit nachgeschaut punkt zwei kann man damit realisieren. punkt drei wird bisschen problematisch, da es nur ein befehl gibt wo man etwas in eine ini datei reischreiben kann (sprich :IniWrite(...) ) ich möchte aber in eine txt datei schreiben Zitieren
robotto7831a Geschrieben 29. Dezember 2009 Geschrieben 29. Dezember 2009 Es gibt aber auch die Befehle FileOpen, FileWriteLine und FileClose. Frank Zitieren
bigvic Geschrieben 29. Dezember 2009 Geschrieben 29. Dezember 2009 (bearbeitet) Ich glaub du brauchst keine Arrays. Hier mal ein bisschen Perlpseudocode der dir vllt. mit der möglichen Vorgehensweise weiterhilft. $i=0; open(FH, '<', "input.txt") or die $!; while $line (<FH>) { open(FH2, '>', "output-$i.txt") or die $!; print FH2 $line; close FH2; $i++; } close FH; Syntaxtipps für autoit hat dir robotto7831a ja gegeben. Bearbeitet 29. Dezember 2009 von bigvic Zitieren
axxis Geschrieben 29. Dezember 2009 Geschrieben 29. Dezember 2009 Mit PHP könnte man es auch so ähnlich lösen: $inhalt = file("C:\blub.csv"); $zaehler = 0; foreach($inhalt as $aktuelle_zeile){ $neue_datei = fopen("C:\blub" . $zaehler . ".txt", "w"); fwrite($neue_datei, $aktuelle_zeile); $zaehler++; } [/PHP] Gruß Hauke Zitieren
cetinasik Geschrieben 29. Dezember 2009 Autor Geschrieben 29. Dezember 2009 #include <File.au3> ; CSV Datei wird in ein array eingelesen ; -------------------------------------- Dim $arCSV $csvFile = "test.csv" _FileReadToArray ( $csvFile , $arCSV ) For $i = 1 To $arCSV[0] $arCSV[$i] = StringSplit($arCSV[$i], ";") Next For $j = 1 To $arCSV[0] $x = $arCSV[$j] MsgBox(0,'', 'Anzahl dert Elemente von $arCSV[3]: ' & $x[5]) ; Dateiname wird erzeugt ;----------------------- $tag = @MDAY $monat = @MON $jahr = @YEAR $std = @HOUR $min = @MIN $sek = @SEC $bs = "-" $Datum = $tag & $bs & $monat & $bs & $jahr & $bs & $std & $bs & $min & $bs & $sek $dbegin = "descr" $dendung = ".txt" $dname = $dbegin & $Datum & $dendung ; Datei wird erzeugt ; ------------------ _FileCreate($dname) ; Erzeugte Datei wird geöffnet und Stellen aus der 1. Datei werden ; hinzugefügt ; --------------------------------------------------------------- $file = FileOpen( $dname , 1) ; Check if file opened for writing OK If $file = -1 Then MsgBox(0, "Error", "Unable to open file.") Exit EndIf FileWriteLine($file, "Line1") FileWriteLine($file, "Line2" & @CRLF) FileWriteLine($file, $x[5] ) FileClose($file) Next Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.