Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Txt Datei ab einer bestimmten Zeile auslesen und in neue txt schreiben bzw. speichern

Frage Entwicklung VB for Applications

Mitglied: doschtinator

doschtinator (Level 1) - Jetzt verbinden

27.11.2011, aktualisiert 23:21 Uhr, 4245 Aufrufe, 2 Kommentare

Hallo,

nach mittlerweile unzähligen Stunden weiß ich nicht mehr weiter und kann auch nicht mehr ;-(
Meine rudimentären VBS Kenntnisse sind erschöpft und trotz schier ewig gefühlter Suche komme ich nicht mehr weiter.
Problem: Eine txt Datei wird durchsucht und falls in der ersten Zeile das aktuelle Datum steht, dann soll das nächste Datum in einer Zeile x die weiter unten steht gesucht werden. Ab dieser Zeile x soll dann der komplette Rest der txt in eine neue txt geschrieben werden. Hier mein bisheriger Code:

01.
Set fso = CreateObject("Scripting.FileSystemObject") 
02.
 
03.
TermDatei = "termine.txt" 
04.
TermNeu = "term_neu.txt" 
05.
Heute = Date() 
06.
 
07.
' "termine.txt" komplett in Array einlesen ...  
08.
TermLines = Split(fso.OpenTextFile(TermDatei).ReadAll, vbCrLf) 
09.
 
10.
' Ausgabedatei erzeugen 
11.
Set Ausgabe = fso.CreateTextFile(TermNeu, True) 
12.
	 
13.
	' erste Zeile mit heutigem Datum vergleichen; geschieht täglich um 23:59 Uhr 
14.
    If InStr(TermLines(0), Heute) > 0 Then 
15.
        'gefunden: aktuelles Datum in erster Zeile; Schleife abarbeiten, um zu ermitteln, wo der nächste Eintrag steht 
16.
		WScript.Echo ("Gefunden!") 
17.
        For i = 1 To UBound(TermLines) 
18.
			tmpDat = Left(TermLines(i), 10)	'Die ersten 10 Zeichen einer Zeile auf Einträge mit Ziffern überprüfen 
19.
			If IsNumeric(tmpDat) = True then 
20.
				'gefunden: Zeilennummer merken und Schleife verlassen 
21.
				LineNo = i 
22.
				Exit For  
23.
			End If  
24.
		Next 
25.
		WScript.Echo (LineNo) 
26.
		'... gesamten Inhalt ab 'LineNo' in neue txt schreiben 
27.
		ICH WEIß NICHT MEHR WEITER ... 
28.
		 
29.
    End If
Wenn jemand so freundlich wäre und mir behilflich sein könnte wäre dies toll. Ich habe diverse Möglichkeiten getestet, auch solche, die hier im Forum abgebildet sind. Leider bin ich bezüglich dem Syntax nicht sicher und kann daher vielleicht nahe an der Lösung gewesen sein, muss meine Bemühungen aber auf Probieren ausrichten. Daher wäre mir eine Ergänzung von jemand, dem dies einfach fällt, sehr gelegen. Danke im Voraus!

Gruß doschtinator
Mitglied: bastla
LÖSUNG 27.11.2011, aktualisiert 08.01.2014
Hallo doschtinator!

Vorweg: Als "Code" formatiert sähe Dein Ansatz zumindest schon mal besser aus ...
Wenn Du doch schon so eine schöne Schleife hast, würde ich die gleich weiter verwenden - ungetestet etwa so:
01.
Set fso = CreateObject("Scripting.FileSystemObject") 
02.
 
03.
TermDatei = "termine.txt" 
04.
TermNeu = "term_neu.txt" 
05.
Heute = Date() 
06.
 
07.
' "termine.txt" komplett in Array einlesen ... 
08.
TermLines = Split(fso.OpenTextFile(TermDatei).ReadAll, vbCrLf) 
09.
 
10.
' Ausgabedatei erzeugen 
11.
Set Ausgabe = fso.CreateTextFile(TermNeu) 
12.
 
13.
' erste Zeile mit heutigem Datum vergleichen; geschieht täglich um 23:59 Uhr 
14.
If InStr(TermLines(0), Heute) > 0 Then 
15.
    'gefunden: aktuelles Datum in erster Zeile; Schleife abarbeiten, um zu ermitteln, wo der nächste Eintrag steht 
16.
    WScript.Echo ("Gefunden!") 
17.
    For i = 1 To UBound(TermLines) 
18.
        tmpDat = Left(TermLines(i), 10) 'Die ersten 10 Zeichen einer Zeile auf Einträge mit Ziffern überprüfen 
19.
        If IsNumeric(tmpDat) = True Then 
20.
            Schreiben = True 
21.
            WScript.Echo i 
22.
        End If 
23.
        If Schreiben Then Ausgabe.WriteLine TermLines(i) 
24.
    Next 
25.
End If
Sobald einmal der Schalter "Schreiben" auf "True" gesetzt ist, bleibt er das auch - daher wird ab dieser Zeile in die Ausgabedatei geschrieben ...

Grüße
bastla
Bitte warten ..
Mitglied: doschtinator
27.11.2011 um 23:25 Uhr
Hallo bastla,

sorry wegen der Formatierung! Werde es mir merken.

Tausen Dank für die Ergänzung bzw. Korrektur! So scheint es wie gewünscht zu funktionieren.

SUPER!

Gruß doschtinator
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst TXT Datei auslesen und bestimmte Zeilen in Variable setzen (11)

Frage von 126594 zum Thema PHP ...

Batch & Shell
gelöst Batch sucht bestimmten "text" in einer .txt datei und soll dann die Zeile anzeigen (6)

Frage von MedicalAd zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Mac OS X

Apple hat macOS High Sierra veröffentlicht

(4)

Information von Frank zum Thema Mac OS X ...

Viren und Trojaner

Ransomware or Wiper? RedBoot Encrypts Files but also Modifies Partition Table

(4)

Information von BassFishFox zum Thema Viren und Trojaner ...

Notebook & Zubehör

WOL bei HP Notebooks

(8)

Erfahrungsbericht von Henere zum Thema Notebook & Zubehör ...

Heiß diskutierte Inhalte
Windows Server
Seit IP Umstellung DC DNS Fehler (29)

Frage von Yaimael zum Thema Windows Server ...

Windows 10
gelöst Netzwerkkarte schaltet sich erst nach dem Logon ein (24)

Frage von DerWoWusste zum Thema Windows 10 ...

Grafik
gelöst CAD Arbeitsplätze (17)

Frage von Diddi93 zum Thema Grafik ...

Weiterbildung
gelöst Fest angestellter Admin oder Systemhaus Admin mit Kundenbetreuung? (16)

Frage von Voiper zum Thema Weiterbildung ...