![]() |
Textfile in DB einlesen
Hallo,
ich habe ein kleines Problem. Ich habe eine Paradox7 Tabelle und eine Textdatei. Die Textdatei wollte ich in die DB einlesen. Hatte auch schon mal gegonnen. Das ; soll aber nicht in die DB rein. wie mache ich das
Delphi-Quellcode:
procedure TForm1.bClick(Sender: TObject);
var F: TextFile; S: string; begin if OpenDialog1.Execute then { Dialog zum Dateiöffnen anzeigen } begin AssignFile(F, OpenDialog1.FileName); { Datei ausgewählt } Reset(F); Readln(F, S1); { Erste Zeile der Datei lesen } Edit1.Text := S1; { String in ein TEdit schreiben } CloseFile(F); end; end; |
Re: Textfile in DB einlesen
Zitat:
Delphi-Quellcode:
if DeinText[Length(DeinText)] = ';' then
Delete(DeinText,Length(DeinText),1); |
Re: Textfile in DB einlesen
hieraus werde ich nicht schlau. wie kann ich denn jetzt eine txt datei einlesen???
|
Re: Textfile in DB einlesen
Zitat:
Es gibt im Prinzip 2 Grundformate:
Der Zeichensatz kann ASCCI (MS DOS-Welt), ANSI (Windows-Welt) oder ein sonstiger Zeichensatz sein. Ausserdem kann beim CSV-Format die 1. Zeile die Feldnamen enthalten (oder auch nicht). Man kann den Import hart codieren oder man verwendet Importkomponenten, die durch Parameter gesteuert werden; es kommt drauf an, ob man öfters versch. Dateien importieren muss oder nur einmal. |
Re: Textfile in DB einlesen
hallo,
meine textdatei ist duch ein ; getrennt wie kann ich diese jetzt einlesen und in eine paradox7 tabelle speichern??? |
Re: Textfile in DB einlesen
Hi Christian,
also ich hab das gleiche problem, bin mittlerweile so weit, das die daten in eine TStringlist eingelesen werden
Delphi-Quellcode:
so jetzt muss die string list nur noch zerpflückt werden nach dem ; ( hab ich noch nicht gefunden)
procedure TForm1.Button1Click(Sender: TObject);
var TempList: TStrings; begin Templist := TStringlist.Create; with Templist do begin loadfromFile('C:\Datei.TXT'); try finally end; end; end; end. und dann über SQL (da ich interbase benutze müsst aber mit paradox auch gehen) mit ungefähr diesem Code in die DB geschrieben werdne
Delphi-Quellcode:
hoff ich konnt dir nen ansatz geben.
insert into TABLE(FELD1, FELD2) VALUES ('wert1','wert2')
Gruß Michael |
Re: Textfile in DB einlesen
Hallo Christian,
bei deinem Problem ist es völlig egal, welche Trennzeichen deine Datensätze trennen. Du möchtest ja ohnehin die gesamte Textdate in die Datenbank schreiben - und nicht die Textdatei nach Datensätzen parsen. Paradox ist da ziemlich easy. Du richtest Dir zunächst eine Table-Komponente (ich nenne sie "TextTable") ein und verbindest sie mit deiner Zieltabelle. Die Tabelle muß ein Feld (ich nenne es kurzerhand einmal "dbtextfeld") enthalten, in dem der Text zukünftig gespeichert wird. Dieses Feld ist vom Typ BLOB(240,1).
Delphi-Quellcode:
TextFileDataLines := TStringList.Create;
TextFileDataLines.LoadFromFile('C:\Datei.TXT'); try TextTable.Edit; TextTable.FieldbyName('dbtextfeld').AsString := TextFileDataLines.Text; TextTable.Post; except end; TextFileDataLines.Free; So, das war's übrigens lesen klappt dann wieder genau so einfach:
Delphi-Quellcode:
TextFileDataLines := TStringList.Create;
try TextFileDataLines.Text := TextTable.FieldbyName('dbtextfeld').AsString; except end; // verwende hier deine Stringliste, zb. zum parsen... TextFileDataLines.Free; Ich hoffe, ich konnte dir helfen. Bis denn hacki |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz