Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Zeilenumbrüche in mehreren Dateien eines Ordners entfernen

Frage Entwicklung Batch & Shell

Mitglied: Tranministrator

Tranministrator (Level 1) - Jetzt verbinden

21.09.2014, aktualisiert 20:19 Uhr, 939 Aufrufe, 2 Kommentare

Hallo liebe Admins,

habe folgenden Code welcher ganz gut funktioniert und alle Zeilenumbrüche EINER bestimmten Datei entfernt.
Jetzt ist aber die große Frage wie man das so löst, dass alle Dateien eines bestimmten Ordners mit einem bestimmten Dateinamens-Anfang zB. TEST* damit ausgestattet werden ohne dass sich der Dateiname dabei ändert.


01.
'Variablen & Konstanten definieren 
02.
Dim fso, objEingabe, objAusgabe, objSuchen 
03.
Dim Pfad, EingabeDatei, AusgabeDatei, Zeile 
04.
 
05.
Suchen_Click() 
06.
 
07.
Private Sub Suchen_Click() 
08.
 
09.
Pfad = "C:\Users\xxx\Desktop\test\" 
10.
EingabeDatei = "test.txt" 
11.
AusgabeDatei = "aus.txt" 
12.
 
13.
Const ForReading = 1, ForWriting = 2, ForAppending = 8 
14.
'Objekt erstellen 
15.
Set fso = CreateObject("Scripting.FileSystemObject") 
16.
If fso.FileExists(Pfad & EingabeDatei) Then 
17.
Set objEingabe = fso.OpenTextFile(Pfad & EingabeDatei, 1) 
18.
Set objAusgabe = fso.OpenTextFile(Pfad & AusgabeDatei, 2,true) 
19.
Else 
20.
MsgBox "Fehler: Eingabedatei ist nicht vorhanden." 
21.
Exit Sub 
22.
End If 
23.
 
24.
do until objEingabe.AtEndOfStream 
25.
Zeile = objEingabe.ReadAll 
26.
Zeile = Replace(zeile, vbcrlf, "") 
27.
 
28.
objAusgabe.Write (Zeile) 
29.
Loop 
30.
 
31.
objEingabe.Close 
32.
objAusgabe.Close 
33.
 
34.
' Eingabedatei löschen 
35.
fso.DeleteFile Pfad & EingabeDatei, True 
36.
' AusgabeDatei umbenennen durch MoveFile 
37.
fso.MoveFile Pfad & Ausgabedatei, Pfad & EingabeDatei 
38.
 
39.
Set objAusgabe = Nothing 
40.
Set objEingabe = Nothing 
41.
Set fso = Nothing 
42.
 
43.
End Sub
Viele Grüße

Robs
Mitglied: rubberman
LÖSUNG 21.09.2014, aktualisiert um 20:19 Uhr
Hallo Tranministrator,

etwa so:
01.
Option Explicit 
02.
 
03.
Const strPath = "C:\users\xxx\desktop\test" 
04.
Const strFirstPart = "TEST" 
05.
 
06.
Const ForReading = 1, ForWriting = 2 
07.
Dim objFSO, objFolder, objFile, objStream, strContent 
08.
 
09.
Set objFSO = CreateObject("Scripting.FileSystemObject") 
10.
Set objFolder = objFSO.GetFolder(strPath) 
11.
 
12.
For Each objFile In objFolder.Files 
13.
  If InStr(objFile.Name, strFirstPart) = 1 Then 
14.
    Set objStream = objFile.OpenAsTextStream(ForReading) 
15.
    strContent = Replace(objStream.ReadAll, vbCrLf, "") 
16.
    objStream.Close 
17.
    Set objStream = objFile.OpenAsTextStream(ForWriting) 
18.
    objStream.Write strContent 
19.
    objStream.Close 
20.
  End If 
21.
Next
Grüße
rubberman
Bitte warten ..
Mitglied: Tranministrator
21.09.2014 um 20:20 Uhr
Hallo Rubberman,

recht herzlichen Dank für deine Mühe!

Hat bestens geklappt

Viele Grüße

Robs
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Batch & Shell
gelöst Powershell: Dateien nach Version löschen in mehreren Ordnern (4)

Frage von ImmerKind zum Thema Batch & Shell ...

Batch & Shell
gelöst Dateien eines Ordners mit find welche 1234 im Namen haben umbenennen in x12345 (4)

Frage von reissaus73 zum Thema Batch & Shell ...

Debian
Debian Zugriff auf gelöschte Dateien entfernen (6)

Frage von kaihummels zum Thema Debian ...

Heiß diskutierte Inhalte
DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (9)

Frage von JayyyH zum Thema Switche und Hubs ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...