Hallöchen,
selbst auf die Gefahr hin das ich gleich was auf den Deckel bekomme, im Sinne von: Guck doch Mal in die Hilfe, oder nutz`die Forensuche.... Hab ich, nur werd ich da nicht schlau draus...
Jaaa ich brauch immer etwas länger ![]()
Ein Bekannter von mir hatte ein Mal in Delphi eine Exe-Datei erstellt mit der er Textdateien nach Inhalten durchsuchen konnte und diese dann durch neue Inhalte in einer neuen Datei gespeichert hat...
So etwas versuche ich gerade nachzubauen und hänge an dem Punkt fest, wo die Datei geöfnet / ausgelesen werden soll...
Ich habe eine kleine GUI erstellt wo ich zumindest schon Mal so weit bin das ich den Pfad zu der zu ändernden Datei öffnen kann und der Pfad der "Neuen" Datei eingetragen werden kann... dieser wird auch schon Mal übernommen, doch da verliessen sie mich....
Spoiler anzeigen
#include <GUIConstants.au3>
[/autoit] [autoit][/autoit] [autoit]#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 459, 150, 193, 125)
$IN_FILE = GUICtrlCreateLabel("In File", 16, 16, 32, 17)
$OUT_FILE = GUICtrlCreateLabel("Out File", 16, 48, 40, 17)
$Button_IN = GUICtrlCreateButton("...", 56, 12, 27, 25, 0)
$Button_OUT = GUICtrlCreateButton("...", 56, 44, 27, 25, 0)
$FILE_TO_CHANGE = GUICtrlCreateInput("", 98, 14, 345, 21) ; Pfad zur Datei derer Inhalt angepasst werden soll
$CHANGED_FILE = GUICtrlCreateInput("", 98, 46, 345, 21) ; Pfad zur angepassten Datei
$Checkbox1 = GUICtrlCreateCheckbox("Case sensitive", 16, 120, 97, 17) ; Funktion check ich noch net ![]()
$Label1 = GUICtrlCreateLabel("Old Pattern:", 16, 80, 60, 17)
$OLD_PATTERN = GUICtrlCreateInput("", 98, 78, 121, 21)
$Label2 = GUICtrlCreateLabel("New Pattern:", 232, 80, 66, 17)
$NEW_PATTERN = GUICtrlCreateInput("", 322, 78, 121, 21)
$Button3 = GUICtrlCreateButton("Start", 368, 116, 75, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button_IN
$IN_Path = FileOpenDialog("title",@WorkingDir & "\","Textfiles (*.txt;*.ini;*.html;*.au3;*.doc;*.log)")
GUICtrlSetData($FILE_TO_CHANGE,$IN_Path)
Case $Button_OUT
$OUT_Path = FileOpenDialog("title",@WorkingDir & "\","Textfiles (*.txt;*.ini;*.html;*.au3;*.doc;*.log)")
GUICtrlSetData($CHANGED_FILE,$OUT_Path)
; Nun wird der OUT_Path erst noch bearbeitet
[/autoit] [autoit][/autoit] [autoit]Case $Button3
$Old_P = GUICtrlRead($OLD_PATTERN) ; lesen: zu ersetzendes Zeichen
$New_P = GUICtrlRead($NEW_PATTERN) ; lesen: Ersatzzeichen
$Origin = GUICtrlRead($IN_Path) ; lesen: Pfad der Orginaldatei
$New_Path = GUICtrlRead($CHANGED_FILE) ; lesen: Pfad der neuen Datei
;MsgBox(0,"","Outpath =" & $New_Path)
EndSwitch
WEnd
Frage: Wie genau bekomme ich es hin, das eine Datei nach z.B. "X" durchsucht wird und alle "X" durch "A" ersetzt ?
Würd mir schon reichen wenn mir wer die Funktionalität ein wenig näher bringen könnte.
FileOpen, FileRead & FileWrite habe ich mir schon angeshen, auch StringReplace habe ich mir lange angeschaut, nur der Knoten will nicht platzen ( Weiss nicht wie ich`s umsetzen kann )
Nicht falsch verstehen bitte, ich will keine fertigen Scripte vor die Nase gehalten bekommen, mags nur endlich schnallen ![]()
Grüße
Mike