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

Datei einlesen - Zeilenweise Inhalt ändern - Datei abspeichern

Frage Entwicklung Batch & Shell

Mitglied: Shorty2010

Shorty2010 (Level 1) - Jetzt verbinden

14.07.2010 um 22:20 Uhr, 3484 Aufrufe, 2 Kommentare

Das einlesen unserer Stammzeitdaten, die für die Software jedoch so leider nicht bewertet werden kann.

Hallo ihr lieben,

kann mir mal jemand einen Tip geben.

Und zwar bekomme ich aus unserer Software Zeitdaten, die ich in dem Format leider nicht einlesen kann. Zur Zeit importiere ich diese in Excel und formatier sie hier um. Leider schaffe ich so aber einen Single Point of Failure (mich) und auch Flüchtigkeitsfehler können mir so passieren. Daher würde ich das ganze gerne automatisieren,

Die Ursprungsdatei sieht wie folgt aus:

Bsp.:

551|1212098|01.08.2010|08:30:00|16:30:00|0,75|273234|

Die Datei muss aber wie folgt aussehen (neuer Trenner ; )

022;L551;;1212098;01.08.2010;083000;163000;;273234;

022 -> Von mir vorgegebener Wert
L551 ->Ursprungsdatei erster Wert +L
1212098 -> Ursprungsdatei zweiter Wert (ohne Änderung)
;; Leerzeichen zwischen den Trenner muss eingefügt werden
01.08.2010 -> Ursprungsdatei dritter Wert (ohne Änderung)
08:30:00-> Ursprungsdatei vierter Wert (ohne : )
16:30:00-> Ursprungsdatei fünfter Wert (ohne : )
;; Leerzeichen zwischen den Trenner muss eingefügt werden
273234 -> Ursprungsdatei siebter Wert (ohne Änderung )

Ich wäre für eure Hilfe sehr Dankbar.

Wenn es nicht per Batch geht, wären VB Scripte für mich auch kein Problem hauptsache die Datei kann automatisiert verändert werden.

Gruß
Mitglied: rubberman
14.07.2010 um 22:51 Uhr
Hallo Shorty2010.

Folgender Schnippsel solte die Arbeit für dich erledigen:
01.
@echo off &setlocal 
02.
>neu.txt type nul 
03.
for /f "delims=|: tokens=1-9,11" %%a in (alt.txt) do ( 
04.
  >>neu.txt echo 022;L%%a;;%%b;%%c;%%d%%e%%f;%%g%%h%%i;;%%j; 
05.
)
Die Sache mit den Leerzeichen, die einzufügen sind habe ich nicht verstanden, aber ich denke das bekommst du selbst hin.


Grüße
rubberman

PS: Willkommen im Forum!
Bitte warten ..
Mitglied: SamTrex
14.07.2010 um 23:22 Uhr
Hallo Shorty2010,
hier eine Lösung in VBS:

01.
const ersetzen = true					 
02.
const deinwert = "022"					 
03.
const einzulesende_datei = "test.txt"	 
04.
const temp_datei = "temp.txt"			 
05.
 
06.
dim objfso : set objfso = createobject("scripting.filesystemobject") 
07.
dim arr_line, inputfile, ouputfile 
08.
 
09.
set inputfile = objfso.opentextfile(einzulesende_datei,1) 
10.
set outputfile = objfso.opentextfile(temp_datei,2, true) 
11.
do while not inputfile.atendofstream 
12.
	arr_line = split(inputfile.readline(),"|") 
13.
	outputfile.writeline deinwert & ";" & _											 
14.
						"L" & arr_line(0) & ";" & _ 
15.
						arr_line(1) & ";;" & _ 
16.
						arr_line(2) & ";" & _ 
17.
						replace(arr_line(3),":","") & ";" & _ 
18.
						replace(arr_line(4),":","") & ";;" & _ 
19.
						arr_line(5) & ";" & _ 
20.
						arr_line(6) & ";" 
21.
loop 
22.
inputfile.close 
23.
outputfile.close 
24.
 
25.
if ersetzen = true then 
26.
	objfso.deletefile einzulesende_datei 
27.
	objfso.movefile temp_datei, einzulesende_datei 
28.
end if
MfG Sam
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst Inhalt einer XML Datei Script ändern (4)

Frage von chris27584 zum Thema VB for Applications ...

Batch & Shell
gelöst Datei zeilenweise auslesen - es passiert aber nichts (3)

Frage von Nagus zum Thema Batch & Shell ...

Windows Server
gelöst PowerShell Inhalt einer csv Datei löschen (4)

Frage von makaroni zum Thema Windows Server ...

Batch & Shell
gelöst Dateien nach Inhalt umbenennen (4)

Frage von Icemaniac zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Installation

Unorthodoxer Weg, um an einen Offline-Installer für Adobe Flash zu kommen

(8)

Tipp von beidermachtvongreyscull zum Thema Windows Installation ...

Datenschutz

Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht

(1)

Information von BassFishFox zum Thema Datenschutz ...

Firewall

PfSense OpenVPN beschleunigen

Tipp von Dobby zum Thema Firewall ...

Utilities

CCleaner 5.33 mit Malware infiziert

(27)

Information von SeaStorm zum Thema Utilities ...

Heiß diskutierte Inhalte
Utilities
CCleaner 5.33 mit Malware infiziert (27)

Information von SeaStorm zum Thema Utilities ...

Festplatten, SSD, Raid
gelöst Problem mit DELL 815R Server und Windows Bluescreen (24)

Frage von Leo-le zum Thema Festplatten, SSD, Raid ...

Windows Systemdateien
Windows bootet nicht mehr Fehlermeldung 0xc0000098 (19)

Frage von franzgoerlich zum Thema Windows Systemdateien ...

Windows Netzwerk
Dateien mit Intelligenz per GPO ins Programmverzeichnis (14)

Frage von erwin.t zum Thema Windows Netzwerk ...