Hallo Leute,
ich hab schon das Forum abgesucht, aber leider hab ich mein Problem noch nicht gelöst. Vielleicht ist es auch nur eine Kleinigkeit und ich habe einfach was übersehen. Aber gut zum Problem: Ich habe eine Datei. Die obersten Zeilen beginnen immer mit "#". Diese gilt es herauszufiltern. Das habe ich auch schon hinbekommen. Aber das ersetzen will einfach nicht klappen.
Der Aufbau der Datei sieht so aus:
#ARTIST:Künslter
#TITLE:Titel
;123456
Bisher sieht mein Code so aus:
Spoiler anzeigen
C
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#Include <File.au3>
#Region ### START Koda GUI section ###
$frmMain = GUICreate("Ultrastar Song Dir Creator", 362, 532, 192, 124)
$lInterpret = GUICtrlCreateLabel("Interpret (*)", 8, 104, 56, 17)
$lHinweise = GUICtrlCreateLabel("Hinweis: Felder die mit einem * erscheinen sind Pflichtfelder.", 7, 8, 347, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$lTitel = GUICtrlCreateLabel("Titel (*)", 8, 136, 37, 17)
$lMP3 = GUICtrlCreateLabel("MP3 (*)", 8, 264, 39, 17)
$lGenre = GUICtrlCreateLabel("Genre (*)", 8, 168, 46, 17)
$lEdition = GUICtrlCreateLabel("Edition", 8, 336, 36, 17)
$lSprache = GUICtrlCreateLabel("Sprache (*)", 8, 200, 57, 17)
$lVideo = GUICtrlCreateLabel("Video", 8, 368, 31, 17)
$lPreview = GUICtrlCreateLabel("Vorschaubild", 8, 400, 65, 17)
$lBackground = GUICtrlCreateLabel("Hintergrundbild", 8, 432, 75, 17)
$lPflicht = GUICtrlCreateLabel("Pflichtfelder", 8, 80, 72, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$lOptional = GUICtrlCreateLabel("Optionale Angaben", 8, 312, 112, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$iInterpret = GUICtrlCreateInput("", 88, 104, 129, 21)
$iTitel = GUICtrlCreateInput("", 88, 136, 129, 21)
$cGenre = GUICtrlCreateCombo("", 88, 168, 129, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$cSprache = GUICtrlCreateCombo("", 88, 200, 129, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
$iMP3 = GUICtrlCreateInput("", 88, 264, 129, 21)
$bDurchsuchenMP3 = GUICtrlCreateButton("Durchsuchen", 224, 264, 129, 25)
$iEdition = GUICtrlCreateInput("", 88, 336, 129, 21)
$iVideo = GUICtrlCreateInput("", 88, 368, 129, 21)
$bDurchsuchenVideo = GUICtrlCreateButton("Durchsuchen", 224, 368, 129, 25)
$iPreview = GUICtrlCreateInput("", 88, 400, 129, 21)
$bDurchsuchenPreview = GUICtrlCreateButton("Durchsuchen", 224, 400, 129, 25)
$iBackground = GUICtrlCreateInput("", 88, 432, 129, 21)
$bDurchsuchenBackground = GUICtrlCreateButton("Durchsuchen", 224, 432, 129, 25)
$bSave = GUICtrlCreateButton("Speichern", 24, 480, 121, 25)
$bSettings = GUICtrlCreateButton("Einstellungen", 208, 480, 129, 25)
$lHinweise2 = GUICtrlCreateLabel("Alle anderen sind Optional.", 102, 32, 157, 17)
GUICtrlSetFont(-1, 8, 800, 0, "MS Sans Serif")
$ltxtFile = GUICtrlCreateLabel("Text Datei (*)", 8, 232, 66, 17)
$itextFile = GUICtrlCreateInput("", 88, 232, 129, 21)
$bDurchsuchenTextFile = GUICtrlCreateButton("Durchsuchen", 224, 232, 129, 25)
GUISetState(@SW_SHOW)
; Einstellungs Fenster
$frmSettings = GUICreate("Einstellungen", 356, 107, 194, 127)
$lSpeicherort = GUICtrlCreateLabel("Speicherort", 8, 8, 58, 17)
$iSpeicherort = GUICtrlCreateInput("", 8, 32, 177, 21)
$bDurchsuchenSpeicherort = GUICtrlCreateButton("Durchsuchen", 200, 32, 105, 25)
$bSaveSpeicherort = GUICtrlCreateButton("Speichern", 8, 64, 89, 25)
#EndRegion ### END Koda GUI section ###
Global $TextFile,$MP3,$Video,$Preview,$Background
$ini = @ScriptDir & "/Einstellungen.ini"
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $bDurchsuchenTextFile
$TextFile = FileOpenDialog("Bitte wählen Sie die Text-Datei.",@DesktopDir,"Text-Dateien (*.txt)")
GUICtrlSetData($itextFile,$TextFile)
Case $bDurchsuchenMP3
$MP3 = FileOpenDialog("Bitte wählen Sie eine MP3.",@DesktopDir,"MP3-Dateien (*.mp3)")
GUICtrlSetData($iMP3,$MP3)
Case $bDurchsuchenVideo
$Video = FileOpenDialog("Bitte wählen Sie ein Video.",@DesktopDir,"Video-Dateien (*.avi)")
GUICtrlSetData($iVideo,$Video)
Case $bDurchsuchenPreview
$Preview = FileOpenDialog("Bitte wählen Sie ein Bild.",@DesktopDir,"Bild-Dateien (*.jpg)")
GUICtrlSetData($iPreview,$Preview)
Case $bDurchsuchenBackground
$Background = FileOpenDialog("Bitte wählen Sie ein Bild.",@DesktopDir,"Bild-Dateien (*.jpg)")
GUICtrlSetData($iBackground,$Background)
Case $bSave
Text_Datei_auslesen()
;Daten_auslesen()
Case $bSettings
GUISetState(@SW_SHOW,$frmSettings)
$SpeicherortVorhanden = IniRead($ini,"Speicherort","Ort","")
GUICtrlSetData($iSpeicherort,$SpeicherortVorhanden)
; Einstellungs Fenster Buttons
Case $bDurchsuchenSpeicherort
$Speicherort = FileSelectFolder("Bitte wählen Sie einen Speicherort",@HomeDrive)
GUICtrlSetData($iSpeicherort,$Speicherort)
$SpeicherortNeu = GUICtrlRead($iSpeicherort)
Case $bSaveSpeicherort
IniDelete($ini,"Speicherort","Ort")
IniWrite($ini,"Speicherort","Ort",$SpeicherortNeu)
MsgBox(0,"","Die neuen Einstellungen wurden gespeichert")
EndSwitch
WEnd
Func Daten_auslesen()
$iInterpret1 = GUICtrlRead($iInterpret)
$iTitel1 = GUICtrlRead($iTitel)
FileWriteLine($TextFile,"#ARTIST:" & $iInterpret1 & @CRLF & "#TITLE:" & $iTitel1)
EndFunc
Func Text_Datei_auslesen()
Dim $array
_FileReadToArray($TextFile,$array)
For $i = 1 To $array[0]
_ReplaceStringInFile($TextFile,StringRegExp($array[$i],"#TITLE:*"),"Hallo",0,0)
;If StringRegExp($array[$i],"#TITLE:*") Then
MsgBox(0,"",$array[$i])
;EndIf
Next
EndFunc
Alles anzeigen
Ich hoffe es kann mir einer Helfen, ich komme einfach nicht weiter.