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

gelöst Formatierung eines Textdokumentes wie ein Roboter

Mitglied: EsstMehrBiberSchuetztDenWald

EsstMehrBiberSchuetztDenWald (Level 1) - Jetzt verbinden

07.11.2007, aktualisiert 22.11.2007, 3268 Aufrufe, 10 Kommentare

Hallo zusammen

Meine Frage betrifft das formatieren von einem Textdokument.

Gegeben: - Massenweise Text aneinander geschrieben .....

Gesucht: - Ein Programm das nach x Buchstaben x tabulatoren einfügt.

Im Text sind zb. Geburtsdaten, Orte, Namen drin ..... alles aneinander und schlussentlich soll es so aussehen

Albert 1.1.1990 Embrach
Berta 2.1.1990 Bülach
Carla 3.1.1990 Zürich
.......


Vorher sah es so aus ..


Albert 1.1.1990, 1.1.1990, Embrach,,, Berta, 2.1.1990, Bülach,,, Carla, 3.1.1990, Zürich,,, ................

Da ich sicher schleifen benutzen muss ist meine

Frage an euch: "Mit welchen Befehlen muss ich hier arbeiten?" :D

Habe schon diverse batch tutorials angeschaut und nichts treffendes gefunden (ausser die schleifen .. ) ....

Danke schon im voraus für eure Antwort

gruss

Alex
Mitglied: EsstMehrBiberSchuetztDenWald
07.11.2007 um 13:14 Uhr
vieleicht noch als hinweis .... man müsste bat irgendwie erklären das es alle ";" durch tabulatoren ersetzt .... geht das überhaupt oder muss man da auf andere programme zurückgreifen? :D
Bitte warten ..
Mitglied: bastla
07.11.2007 um 18:10 Uhr
Hallo EMBSDW!

01.
@echo off & setlocal 
02.
set "Ein=D:\Alle Geburtstage in einer Zeile.txt" 
03.
set "Aus=D:\Geburtstagsliste.txt" 
04.
 
05.
set "Cvt=%temp%\ConvSC.vbs" 
06.
echo WScript.Echo Replace(Replace(CreateObject("Scripting.FileSystemObject").OpenTextFile("%Ein%", 1).ReadAll, ";;;", vbCrLF), ";", vbTab)>"%Cvt%" 
07.
cscript //nologo "%Cvt%">"%Aus%" 
08.
del "%Cvt%"
Grüße
bastla
Bitte warten ..
Mitglied: EsstMehrBiberSchuetztDenWald
08.11.2007 um 08:29 Uhr
hm .. danke vielmals für die arbeit die du heir reingesteckt hast ..... aber ich habe noch probleme mit den daten anzupassen, sprich was wo rein kommt ... da ich es ja schlecht 1 zu 1 übernehmen kann ... .:D

Code:

@echo off & setlocal
set "Ein=Z:\Treueabo_tab.csv"
set "Aus=Z:\Endergebnis.txt"

set "Cvt=%temp%\ConvSC.vbs"
echo WScript.Echo Replace(Replace(CreateObject("Scripting.FileSystemObject").OpenTextFile("%Ein%", 1).ReadAll, ";;;", vbCrLF), ";", vbTab)>"%Cvt%"
cscript //nologo "%Cvt%">"%Aus%"
del "%Cvt%"

Ich habe nun einfach die Datei mit dem Text eingegeben (Z:\Treueabo_tab.csv") bzw. pfad
und die datei die es erstellen sollte .... (Z:\Endergebnis.txt") bzw. pfad


Ergebnis:

Ein Textfile mit folgendem Inhalt:

˜çI


Keine Ahnung was der bedeutet ... :D

Gruss

Alex
Bitte warten ..
Mitglied: bastla
08.11.2007 um 11:44 Uhr
Hallo EMBSDW!

Könnte ein Codepage-Problem sein (je nach Datenherkunft ASCII/ANSI) - versuch es mit dieser Variante:
01.
@echo off & setlocal 
02.
set "Ein=Z:\Treueabo_tab.csv" 
03.
set "Aus=Z:\Endergebnis.txt" 
04.
 
05.
set "Cvt=%temp%\ConvSC.vbs" 
06.
echo Set fso=CreateObject("Scripting.FileSystemObject"):fso.OpenTextFile("%Aus%",2,True).Write Replace(Replace(fso.OpenTextFile("%Ein%",1).ReadAll,",,, ",vbCrLF),",",vbTab)>"%Cvt%" 
07.
cscript //nologo "%Cvt%" 
08.
del "%Cvt%"
Als Anmerkung: Da Dein Beispiel und Deine Beschreibung oben widersprüchlich waren (im Beispiel war das Tennzeichen ein ","/ lt nächstem Post wolltest Du alle ";" durch Tab ersetzt haben) musste ich raten und habe als Trennzeichen ";" verwendet ... [Edit] ... und bin damit daneben gelegen - jetzt also mit "," [/Edit]

Grüße
bastla
Bitte warten ..
Mitglied: EsstMehrBiberSchuetztDenWald
08.11.2007 um 11:54 Uhr
hehe .... sorry das ist mein fehler es sollten eigentlich kommas sein ... :D

ich habe un beim code die 3 ";" durch kommas ersattzt und das programm gibt mir folgendes aus ..

ein textfile mit paar hundert "tabs" und nachher ganz normal mein text .. :D
Bitte warten ..
Mitglied: bastla
08.11.2007 um 12:08 Uhr
Hallo EMBSDW!

Es gibt noch eine Stelle mit einem ";" - ich ändere das gleich oben auf ",".

Für Dein obiges Beispiel sieht dann das Ergebnis bei mir so aus:
01.
Albert 1.1.1990	 1.1.1990	 Embrach 
02.
Berta	 2.1.1990	 Bülach 
03.
Carla	 3.1.1990	 Zürich 
04.
................
Grüße
bastla
Bitte warten ..
Mitglied: EsstMehrBiberSchuetztDenWald
08.11.2007 um 13:04 Uhr
genau so sollte es aussehen .. :D

Danke euch vielmals für eure mühe ...

gruss

alexander
Bitte warten ..
Mitglied: EsstMehrBiberSchuetztDenWald
22.11.2007 um 12:52 Uhr
So da bin ich wieder ....

Nach näherem betrachten des Textfiles habe ich folgende Fehler festgestelllt

1. Ein Teil des Text wird abgeschnitten ....

2. Am Anfang des Textfiles folgen zeurst mal xxx Tabulatoren

Für Punkt eins habe ich ehrlich gesagt keine Erklärung ... ich frage mich ob vieleicht was mit dem "fortmatierungs File" nicht stimmt ... (die Anfangsdaten).

Zu Punkt zwei kann ich mir nur vorstellen, dass die Schleife am anfang aus irgend einem Grund leer läuft ,sprich nur den Tabulator ausführt ...

Der Quellcode sieht folgendermassen aus:

@echo off & setlocal
set "Ein=Z:\Treueabo_tab.csv"
set "Aus=Z:\Endergebnis.txt"

set "Cvt=%temp%\ConvSC.vbs"
echo Set fso=CreateObject("Scripting.FileSystemObject"):fso.OpenTextFile("%Aus%",2,True).Write Replace(Replace(fso.OpenTextFile("%Ein%",1).ReadAll,",,, ",vbCrLF),",",vbTab)>"%Cvt%"
cscript nologo "%Cvt%"
del "%Cvt%"

Vieleicht könnt ihr mir noch folgende Passage erklären .. ? :D

cscript
nologo "%Cvt%"

Was bewirkt die?
Bitte warten ..
Mitglied: bastla
22.11.2007 um 15:11 Uhr
Hallo EMBSDW!

01.
cscript //nologo "%Cvt%"
startet einfach das in der "echo"-Zeile erstellte VBScript "%temp%\ConvSC.vbs". Wozu das "//nologo" dient, siehst Du, wenn Du es einmal weg lässt ...

Das angesprochene Script
- liest den gesamten Inhalt der Datei %Ein%,
- ersetzt die Kombination ",,, " durch eine Zeilenschaltung, danach
- jedes "," durch Tab und
- schreibt das Ergebnis in die Datei %Aus%.

Da ich nur Dein oben gepostetes Musterbeispiel zur Verfügung hatte (habe), kann ich nicht feststellen, woher die beschriebenen Fehler stammen könnten - dass allerdings bei einer reinen Textdatei ohne irgendwelche enthaltenen Sonderzeichen Textteile abgeschnitten werden, dürfte eigentlich nicht passieren - versuch es aber zur Sicherheit mit der folgende Zeile (als Ersatz für die bisherige "echo"-Zeile):
01.
echo Set fso=CreateObject("Scripting.FileSystemObject"):S=fso.GetFile("%Ein%").Size:fso.OpenTextFile("%Aus%",2,True).Write Replace(Replace(fso.OpenTextFile("%Ein%",1).Read(S),",,, ",vbCrLF),",",vbTab)>"%Cvt%"
Grüße
bastla
Bitte warten ..
Mitglied: EsstMehrBiberSchuetztDenWald
22.11.2007 um 15:59 Uhr
Hallo Bastla

Danke vielmals für deine Hilfe .... habe nun den von dir vorgegebenen Quelcode ersetzt .. :D

Das Ergebnis ist, dass die Tabulatoren die vorher am Anfang des Dokuments waren verschwunden sind ... :D

Es steht nur noch ein Satz schief formatiert da ... aber soviel ich weiss stimmt da was mit den zu formatierenden Daten nicht.

Ich denke somit wäre das Problem wieder einmal behoben und ich bedanke mich nochmals für deine Hilfe .. :D

grüsse aus Zürich

Alexander
Bitte warten ..
Ähnliche Inhalte
HTML
Textdokument in HTML einbauen
gelöst Frage von deinernstjetztHTML2 Kommentare

Hallo, ich möchte in HTML ein Textdokument für zb. AGB's einbauen. Das sollte in einem ca 200x200px Feld angezeigt ...

Batch & Shell
Zeilen aus Textdokument kopieren
gelöst Frage von stridingBatch & Shell6 Kommentare

Hallo Administrator-Community! Ich stehe mal wieder vor einer, für mich, komplizierten Aufgabe, und bestimmt kann mir auch diesmal jemand ...

Datenschutz

Sicherheitslücke im vernetzten Staubsauger-Roboter

Information von Penny.CilinDatenschutz5 Kommentare

Hallo, auch wenn es nur einen vernetzten Staubsauger-Roboter aus China betrifft, durch den Leak wurde zudem herausgefunden, welche Daten ...

Festplatten, SSD, Raid

Welches Programm für eine Formatierung?

gelöst Frage von Stefan007Festplatten, SSD, Raid5 Kommentare

Hallo Leute, ich bin auf der Suche nach einem guten Programm zum Formatieren von S-ATA Platten. Ich meine damit ...

Neue Wissensbeiträge
Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 4 StundenMultimedia & Zubehör

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Windows Server

Windows Server Backup schlögt Fehl -Lösung 2008-2016

Tipp von BiGnoob vor 6 StundenWindows Server

Hi zusammen , ich möchte gerne einen Lösungstipp abgeben für folgenden fehler: lösung ist folgende:

Humor (lol)
Telekom vs. O2 - 3:2
Erfahrungsbericht von the-buccaneer vor 19 StundenHumor (lol)3 Kommentare

Unglaublich aber wahr: Nachdem mein privater Anschluss am 19.04.18 auf VOIP und VDSL umgestellt wurde, hatte ich seitdem 1,5 ...

Batch & Shell

Windows 10 Heimnetzgruppe abgeschaft. Ein Script für einfache Netzwerk - Freigabe im Heimnetzwerk

Anleitung von treehe vor 22 StundenBatch & Shell3 Kommentare

Anleitung für eine einfache Netzwerkfreigabe unter Windows 10 Wie weiter hab mal ein kleines CMD - Script gebastelt. Womit ...

Heiß diskutierte Inhalte
Netzwerke
IP-Adresse am zweiten Domänencontroller fest vergeben - Server verschwunden
gelöst Frage von DanielG1974Netzwerke23 Kommentare

Ich hab ein Problem, was ich bisher noch nicht erlebt habe Ich habe erfolgreich einen zweiten Server mit ActiveDirectory ...

Windows Server
Windows Server 2012 - Update - Beim Booten bleibt der Server beim Windows Zeichen stehen
Frage von KeilbachWindows Server15 Kommentare

Hallo Zusammen, ich grüße euch, mein Name ist Michele. Ich bin hier ganz Neu - da ich einfach nicht ...

Windows Tools
Virtueller Drucker gesucht (Schnittstelle: USB oder Seriell)
Frage von chrisButterflyWindows Tools14 Kommentare

Hi, ich suche einen virtuellen Drucker, den ich über eine USB oder serieller Schnittstelle ansprechen kann. Dieser Drucker soll ...

Firewall
Sophos SG 125 nicht mehr erreichbar
Frage von GwaihirFirewall14 Kommentare

Hallo zusammen, ausgerechnet über die Feiertage stimmt etwas mit meiner Firmen-Firewall nicht. Es ist eine Sophos SG 125 und ...