Top-Themen

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

Frage Entwicklung VB for Applications

GELÖST

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

Mitglied: doschtinator

doschtinator (Level 1) - Jetzt verbinden

27.11.2011, aktualisiert 23:21 Uhr, 4254 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
Batch & Shell
Bestimmte Zeile aus mehreren Dateien in eine neue Datei schreiben
gelöst Frage von Oggy76Batch & Shell5 Kommentare

Hallo zusammen, meine Kenntnisse in Sachen batch/shell sind ehr auf Anfängerniveau zu sehen. Grund -basics im CMD-Prompt sind vorhanden, ...

Batch & Shell
Einzelne Zeilen in txt Datei speichern und auslesen
gelöst Frage von noah1400Batch & Shell7 Kommentare

Liebe Forum-Mitglieder Ich habe da so eine Frage: Ich bin gerade dabei ein PW abfrage mit Batch zu machen. ...

PHP
TXT Datei auslesen und bestimmte Zeilen in Variable setzen
gelöst Frage von 126594PHP11 Kommentare

Hallo zusammen, vorweg muss ich sagen, ich bin (bis jetzt) absoluter Neuling was PHP angeht. Ich will aus einer ...

Entwicklung
Bestimmte zeile aus txt datei auslesen und sich aus zeile 100 einen wert anzeigen lassen ?
gelöst Frage von bob777Entwicklung12 Kommentare

Hallo Suche einen Weg sich aus einer .config (txt) datei einen Wert Spielzeit auszulesen und anzuzeigen? Kann das irgendwer ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 3 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 3 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 3 TagenSicherheit12 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall10 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS9 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen9 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...

Windows Netzwerk
Zugriff auf den Desktop Ordner eines anderen Rechners in der gleichen Domäne
gelöst Frage von JensNomaWindows Netzwerk6 Kommentare

Guten Abend, ich war neulich mit unserem Admin am Tisch gesessen. Er an seinem Notebook angemeldet mit dem Domänen-Admin, ...