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

Mit VBS bei einer Text Datei bei Leerzeilen an bestimmter Stelle den Wert aus oberer Zeile einfügen

Mitglied: babylonstation5

babylonstation5 (Level 1) - Jetzt verbinden

29.08.2013 um 14:11 Uhr, 1984 Aufrufe, 3 Kommentare

Hallo Team,

habe hier ein Problem mit einer Textdatei.
Die Daten in der textdatei sind Blockweise getrennt (durch eine Leerzeile).
Ich benötige den wert aus einer bestimmten Stelle (immer gleich) der Zeile direkt oberhalb der Leerzeile (an der gleichen Stelle)
Eigentlich muss "nur" der Wert nach unten in die Leerzeile geklappt werden.

Beginne gerade mit VB Script und habe noch keine Lösung.

Mit Excel und Makros geht es, aber die Datei ist zu groß.
Habe hier eine Datei mit ca. 100.000 Zeilen.

Muster der Datei:

10 er345 DE
12 ztr345 DE

32 tu345 ZV
13 ur345 ZV

45 pq345 DE
08 rt345 DE


Und sollte so aussehen:

10 er345 DE
12 ztr345 DE
DE
32 tu345 ZV
13 ur345 ZV
ZV
45 pq345 DE
08 rt345 DE
ZV




Ich hoffe, Ihr habt da eine Lösung.
Danke im Voraus.
Mitglied: 106543
29.08.2013 um 14:15 Uhr
Zitat von babylonstation5:
Hallo Team,
hoi
Muster der Datei:

10 er345 DE
12 ztr345 DE

32 tu345 ZV
13 ur345 ZV

45 pq345 DE
08 rt345 DE


Und sollte so aussehen:

10 er345 DE
12 ztr345 DE
DE
32 tu345 ZV
13 ur345 ZV
ZV
45 pq345 DE
08 rt345 DE
ZV

sorry ich erkenne keine Logik in dem Schnipsel
sollte nicht nach
45 pq345 DE
08 rt345 DE

DE stehen oder vertuh ich mich grade :D

Grüße
Exze
Bitte warten ..
Mitglied: rubberman
29.08.2013 um 21:24 Uhr
Hallo babylonstation5, willkommen im Forum.

Probier mal folgendes Script:
01.
Option Explicit
02.

03.
Const strSrc = "input.txt"
04.
Const strDest = "output.txt"
05.

06.
Dim objFSO, objSrcFile, objDestFile, strLine, arrLine, boolEmpty
07.
Const ForWriting = 2
08.

09.
boolEmpty = False
10.
Set objFSO = CreateObject("Scripting.FileSystemObject")
11.
Set objSrcFile = objFSO.OpenTextFile(strSrc)
12.
Set objDestFile = objFSO.OpenTextFile(strDest, ForWriting, True)
13.

14.
While Not objSrcFile.AtEndOfStream
15.
  strLine = objSrcFile.ReadLine
16.
  If strLine = "" Then
17.
    If IsArray(arrLine) And boolEmpty = False Then strLine = arrLine(UBound(arrLine))
18.
    boolEmpty = True
19.
  Else
20.
    arrLine = Split(strLine, " ")
21.
    boolEmpty = False
22.
  End If
23.
  objDestFile.WriteLine strLine
24.
Wend
25.

26.
If strLine <> arrLine(UBound(arrLine)) And boolEmpty = False Then objDestFile.WriteLine arrLine(UBound(arrLine))
27.

28.
objSrcFile.Close
29.
objDestFile.Close
Die Dateinamen solltest du natürlich anpassen

Grüße
rubberman
Bitte warten ..
Mitglied: babylonstation5
30.08.2013 um 09:49 Uhr
Stimmt natürlich. Mein Fehler. Sorry
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Batch datei eine bestimmt Datei mit einer bestimmten software öffnen

gelöst Frage von Daoudi1973Batch & Shell3 Kommentare

Hallo zusammen, wir haben in der Arbeit Acrbat Reader als Standard Software um PDF-Dateien zu öffnen. meine Frage: wie ...

VB for Applications

VBS Datei Auswahl Dialog

gelöst Frage von 133202VB for Applications12 Kommentare

Hallo Ihr, im Thread: konnte ich schon finden, was ich gesucht habe: Jetzt möchte ich allerdings, dass am Anfang ...

VB for Applications

VBS für Timestamp-Datei

gelöst Frage von PascalSchVB for Applications3 Kommentare

Hallo Zusammen, Bin ziemlich neu in der Welt des VBS und habe eine Frage hierzu, die ihr mir hoffentlich ...

Batch & Shell

Ergebnis in Text datei ausgeben

gelöst Frage von XcaschoXBatch & Shell2 Kommentare

Hallo, irgendwie stehe ich auf dem schlauch. Habe folgende Batch erstellt, aber der Text wier immer überschrieben. Das ergebnis ...

Neue Wissensbeiträge
Voice over IP

Telekom Umstellung von ISDN Anlagenanschluss auf IP-Telefonie

Erfahrungsbericht von NixVerstehen vor 2 TagenVoice over IP7 Kommentare

Hallo zusammen, nachdem nun vor ein paar Tagen die zwangsweise Umstellung von ISDN auf IP-Telefonie problemlos über die Bühne ...

Apple

Apple Special Event vom 10.09.2019: Arcade, TV+, iPad und iPadOS, Watch und iPhone 11

Information von Trontur vor 4 TagenApple2 Kommentare

Hier könnt ihr euch die Keynote von Tim Cook auf dem Apple Special Event vom 10.09.2019 anschauen: September Event ...

LAN, WAN, Wireless

Das RIPE ist quasi endgültig leer was IPv4 angeht

Information von LordGurke vor 11 TagenLAN, WAN, Wireless8 Kommentare

Das RIPE teilt mit, dass sie erwarten, Ende des Jahres keine /22-IPv4-Allocations (1.024 Adressen) mehr vergeben zu können. Dann ...

Verschlüsselung & Zertifikate

Ein besserer Weg zur Delegation of Control für Bitlocker Recoverykeys

Anleitung von DerWoWusste vor 11 TagenVerschlüsselung & Zertifikate

Will man Supportmitarbeitern ermöglichen, Bitlocker-Recoverykeys auszulesen, dann bietet sich eigentlich der Delegation of Control Wizard an. Ich zeige zunächst ...

Heiß diskutierte Inhalte
Hyper-V
Umzug Hyper-V mit VM in anderen Netzwerkabschnitt
gelöst Frage von keine-ahnungHyper-V9 Kommentare

Moin at all, ich habe leider den Freitag verpennt - daher meine obligate Freitagsfrage erst jetzt Ich habe einen ...

Windows 10
Windows 10 ( upgrade per media creator von win7 ) hat keine Systemwiederherstellung
gelöst Frage von knirschkeWindows 108 Kommentare

Hallo ! Habe letztlich mein Win7 auf Win10 aufgepeppt per Media Creator. Ging - obzwar recht spät - ganz ...

Windows Server
SATA Controler aktivieren an Fujitsu Primergy RX300 S7
Frage von darklivingWindows Server7 Kommentare

Guten Morgen zusammen, ich versuche gerade an einem Fujitsu Primergy Server den SATA Controller zu nutzen. Bis vor kurzem ...

Hardware
Ausrichtung Profilschienen - was würdet ihr empfehlen?
gelöst Frage von ShihanHardware7 Kommentare

Ich habe einen Digitus 19" 12 U Netzwerkschrank. Dieser hätte eigentlich nur vorne Profilschienen, da ich aber im hinteren ...