Ich möchte in einem Ordner alle 40 Textdateien ändern.

Anfängerfragen zum Programmieren mit PureBasic.
funkheld
Beiträge: 636
Registriert: 31.12.2009 11:58

Ich möchte in einem Ordner alle 40 Textdateien ändern.

Beitrag von funkheld »

Hallo, guten Tag.
Ich möchte in einem Order alle 40 Textdateien automatisch ändern.
In der zweiten Zeile möchte ich bei allen den Text "controller = FRA" ändern in "controller = GER".

Es sollte mit einem Aufruf des Purebasicprogrammes geschehen.

Der Ordner ist
D:\Spiel\france\
wo sich die Textdateien befinden.

Danke.
Gruss
Benutzeravatar
helpy
Beiträge: 635
Registriert: 29.08.2004 13:29

Re: Ich möchte in einem Ordner alle 40 Textdateien ändern.

Beitrag von helpy »

Ich nehme für solche Aufgaben ausschließlich: grepWin ...
... oder Notepad++ und "Suchen/Ersetzen in Dateien".
Windows 10
PB Last Final / (Sometimes testing Beta versions)
Benutzeravatar
juergenkulow
Beiträge: 188
Registriert: 22.12.2016 12:49
Wohnort: :D_üsseldorf-Wersten

Re: Ich möchte in einem Ordner alle 40 Textdateien ändern.

Beitrag von juergenkulow »

Hallo funkheld,

hier ein Vorschlag wie Deine Prozeduren aussehen könnten:

Code: Alles auswählen

;Text "controller = FRA" ändern
Declare meinDir(Verzeichnis$, List Dateinamen$()) ; mit ExamineDirectory
Declare ErsetzeStringInDatei(Dateiname$,Zeile.i,SuchString$, ErsatzString$) ; mit OpenFile
Bitte stelle Deine Fragen, denn den Erkenntnisapparat einschalten entscheidet über das einzig bekannte Leben im Universum.

Jürgen Kulow Wersten :D_üsseldorf NRW D Europa Erde Sonnensystem Lokale_Flocke Lokale_Blase Orion-Arm
Milchstraße Lokale_Gruppe Virgo-Superhaufen Laniakea Sichtbares_Universum
H.Brill
Beiträge: 356
Registriert: 15.10.2004 17:42
Wohnort: 66557 Neunkirchen

Re: Ich möchte in einem Ordner alle 40 Textdateien ändern.

Beitrag von H.Brill »

funkheld hat geschrieben:Hallo, guten Tag.
Ich möchte in einem Order alle 40 Textdateien automatisch ändern.
In der zweiten Zeile möchte ich bei allen den Text "controller = FRA" ändern in "controller = GER".

Es sollte mit einem Aufruf des Purebasicprogrammes geschehen.

Der Ordner ist
D:\Spiel\france\
wo sich die Textdateien befinden.

Danke.
Gruss
Soll es ein extra Programm werden ?
Ein Konsolenprogramm, ein normales mit Fenster,
oder vielleicht sogar eine Batchdatei ?

Am einfachsten ist es mit einer Listbox.
Wenn du der mit
sPath.s = "D:\Spiel\france\*.*"
_SendMessage(lb, $18D, 0, *sPath) ; LB_DIR
diese Message schickst, hast du das Zusammensuchen der Dateien
gespart. Die stehen dann alle in der Listbox, die du nacheinander
abarbeiten kannst. Die Zeilen der jeweiligen Datei in ein Array einlesen,
die zweite Zeile (2.Element des Arrays) mit ReplaceString() bearbeiten
und wieder zurück speichern.
PB 5.60
Antworten