AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Textdatei einlesen und in anderer form ausgeben
Thema durchsuchen
Ansicht
Themen-Optionen

Textdatei einlesen und in anderer form ausgeben

Ein Thema von jority · begonnen am 15. Dez 2003 · letzter Beitrag vom 16. Dez 2003
Antwort Antwort
jority

Registriert seit: 1. Jul 2003
Ort: on your Harddisk
49 Beiträge
 
Delphi 7 Professional
 
#1

Textdatei einlesen und in anderer form ausgeben

  Alt 15. Dez 2003, 15:38
hallo,
ich habe eine Textdatei die so aussieht:

X4C
Herbert Soundso
Muster STR. 7 25436 Musterhausen
WVWZZZ1JZ1B148235 TšV-TERMIN Jan 04 KKK-MU 250
TYP/MODELL 1J10E4 LETZTER BESUCH Jan 01 ERSTZULASSUNG 30.01.01
Olaf-Siegfried Muster
MusterWEG 49 25436 Musterhausen
WAUZZZ8DZSA030862 TšV-TERMIN Jan 04 KKK-MA 250
TYP/MODELL 8D2054 LETZTER BESUCH Jan 03 ERSTZULASSUNG 18.01.95

Das Problem ist das diese in Excel soll und das da wirres zeug gibt.

Es wäre am besten wenn ich diese Datei umstruktorieren würde.
Sie sollte dann so aussehen:

Herbert Soundso ; Muster Str. 7 ; 25436 Musterhausen ;
Olaf-Siegfried Muster ; Musterweg 49 ; 25436 Musterhausen;
Name ; Strasse ; PLZ Ort ;
usw.

kann mir dabei jemand helfen?

gruß Jority
der HipHop regiert die Welt, und wer regiert den HipHop:
http://www.TJ-Recordz.de.vu
Peace TJ
  Mit Zitat antworten Zitat
Benutzerbild von Uncle Cracker
Uncle Cracker

Registriert seit: 30. Mär 2003
Ort: Freital
694 Beiträge
 
#2

Re: Textdatei einlesen und in anderer form ausgeben

  Alt 15. Dez 2003, 15:52
Du könntest Excel im Hintergrund öffnen und über OLE-Automation steuern.

Jedoch hat das den Nachteil, dass Excel installiert sein muss
I wish it was legal to marry software because I'm madly in love with Delphi...
  Mit Zitat antworten Zitat
jority

Registriert seit: 1. Jul 2003
Ort: on your Harddisk
49 Beiträge
 
Delphi 7 Professional
 
#3

Re: Textdatei einlesen und in anderer form ausgeben

  Alt 15. Dez 2003, 15:58
so könnte man es machen nur bin ich mir sicher das diese art wie oben beschrieben erst der anfang ist.
ich denke mir das es sicher mal so sein soll das quasi ein knopfdruck und dann aber ab dafür.
txt--> word seriendruck

und deshalb möchte ich die datei erstmal "nur" neu aufbauen.

gruß jority
der HipHop regiert die Welt, und wer regiert den HipHop:
http://www.TJ-Recordz.de.vu
Peace TJ
  Mit Zitat antworten Zitat
Genius
(Gast)

n/a Beiträge
 
#4

Re: Textdatei einlesen und in anderer form ausgeben

  Alt 16. Dez 2003, 17:00
Hallo,
wenn ich mir deine Daten anschaue, denke ich dass man das ganze schlicht und einfach mit Excel realisieren kann.

Über DATEN >> Text in Spalten >>> feste Breite und anschliessendes Markieren der Spalten , sollte es gehen.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Textdatei einlesen und in anderer form ausgeben

  Alt 16. Dez 2003, 17:08
Nimm dir zwei Stringlisten. Mit der ersten gehst du zeile für Zeile durch die erste Datei. So wie es aussieht, fängt alle vier Zeilen ein neuer Datensatz an. Jetzt hängst du alle alle vier Zeilen zusammen mit ";" getrennt und jede vierte Zeile fügst du sie der zweiten Stringliste hinzu.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
choose

Registriert seit: 2. Nov 2003
Ort: Bei Kiel, SH
729 Beiträge
 
Delphi 2006 Architect
 
#6

Re: Textdatei einlesen und in anderer form ausgeben

  Alt 16. Dez 2003, 17:20
Wenn Du Hier im Forum suchenreguläre Ausdrücke verwenden würdest, könnte die Lösung (sofern die erste Zeile entfernt wird) in etwa so aussehen:

Delphi-Quellcode:
with RegExp('(.+?)\n(.+?)\s(\d{5})\s(.*?)\n(.*?\n){2}') do
  if Execute(AString) then
  repeat
    myName:= Match[1];
    myStreet:= Match[2];
    myPostalCode:= Match[3];
    myCity:= Match[4];
    DoSth(myName, myStreet, myPostalCode, myCity);
  until not ExecuteNext;
Der korrekte reguläre Ausdruck kann jedoch nur unter Verwendung der Formatspezifikation ertellt werden (zB setzt obiger die Existenz einer fünfstelligen Postleitzahl unmittelbar vor dem Ortsnamen vorraus, was bei internationalem oder schlecht gepflegtem Datenaufkommen nicht vorrausgesetzt werden kann...)
gruß, choose
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz