AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

CSV Import

Ein Thema von MB3rlin · begonnen am 11. Apr 2011 · letzter Beitrag vom 28. Aug 2017
Antwort Antwort
Seite 1 von 2  1 2      
MB3rlin

Registriert seit: 11. Apr 2011
Ort: Berlin
3 Beiträge
 
#1

CSV Import

  Alt 11. Apr 2011, 13:21
hallo delphi-praxis community.
Ich möchte gernen einen CSV import selber schreiben ohne eine Komponente dazu verwenden. Ich hab hier im Forum und auch mit anderen Suchmaschinen gesucht, leider nichts passendes gefunden.
Der Import sollte in etwa so aussehen:
Ich wähle die csv Datei aus , setzte ein Haken ob die csv - Datei einen Kopf besitzt, wenn ja werden die Header informationen ausgelesen und in die entsprechenden Comboboxen geschrieben die ich verwende um die Spaten der CSV - Datei den DB - Spalten zuzuordnen. Wenn das erledigt wurde , werden die Daten in die DB geschrieben .
Danke für eure Mühe
MB3rlin
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.768 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: CSV Import

  Alt 11. Apr 2011, 13:23
Hallo,

Du könntest Dir mal die TStringList und da speziell, Delimiter, DelimitedText
und StrictDelimiter anschauen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#3

AW: CSV Import

  Alt 11. Apr 2011, 13:27
Hallo,

Du könntest Dir mal die TStringList und da speziell, Delimiter, DelimitedText
und StrictDelimiter anschauen.
Das kann aber auch nur der Anfang sein, da ja zumindest theoretisch das Trennzeichen auch in den Nutzdaten vorkommen kann. Gab es da nicht ein Tool oder eine Klasse von alzaimar (oder war es shmia? Ich bin gerade nicht sicher), das solche Dinge berücksichtigt?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#4

AW: CSV Import

  Alt 11. Apr 2011, 13:32
hallo, ich arbeite des Öfteren auch mit CSV Dateien:
vielleicht hilft dir mein Import ein bisschen weiter:

Delphi-Quellcode:
procedure TfrmMain.importFromCSVfile(sFile: string);
var
  tfDatei: TextFile;
  sZInhalt: string;
  slWerte: TStringList;
  iZeile: Integer;
begin
  TRY
    TRY
      AssignFile(tfDatei, sFile);
      Reset(tfDatei);
      iZeile:= 0;
      while not EoF(tfDatei) do
      begin
        slWerte := TStringList.Create;
        Readln(tfDatei,sZInhalt);
        slWerte.Delimiter := ';';
        slWerte.StrictDelimiter := True;
        slWerte.DelimitedText := sZInhalt;

        Inc(iZeile); // erste Zeile ist der Kopf

        if IZeile > 1 then // alles größer als Zeile eins sind Daten
          begin
            if slWerte.Strings[2] = 'then
              slWerte.Strings[2] := IntToStr(0);
              tTabelle.Open;
              tTabelle.Append;
              tTabelle['Spaltenname1'] := StrToInt(slWerte.Strings[0]);
              tTabelle['Spaltenname2'] := slWerte.Strings[2];
              tTabelle.Post;
          end;
      end;
    EXCEPT
      MessageDlg('Est ist ein Fehler aufgetreten, der Prozess wird beendet.',mtError, [mbOK], 0);
    END;
  FINALLY
    CloseFile(tfDatei);
    tTabelle.Close;
  END;
end;
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

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

AW: CSV Import

  Alt 11. Apr 2011, 13:37
hallo delphi-praxis community.
Ich möchte gernen einen CSV import selber schreiben ohne eine Komponente dazu verwenden. Ich hab hier im Forum und auch mit anderen Suchmaschinen gesucht, leider nichts passendes gefunden.
Das kann nicht sein. Wenn ich nach csv suche findest du meinen CSVBetrachter und der ist mit Quellcode.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
MB3rlin

Registriert seit: 11. Apr 2011
Ort: Berlin
3 Beiträge
 
#6

AW: CSV Import

  Alt 11. Apr 2011, 13:42
Danke erstmal für die schnellen Antworten ich werd es gleich mal ausprobieren
  Mit Zitat antworten Zitat
Benutzerbild von Aurelius
Aurelius

Registriert seit: 29. Jan 2007
Ort: Erfurt
753 Beiträge
 
Delphi 7 Personal
 
#7

AW: CSV Import

  Alt 11. Apr 2011, 15:20
Hi MB3rlin,

solltest du dich dazu entscheiden den Import wirklich selbst schreiben zu wollen würde ich dir auf jeden Fall folgende Spezifikationen ans Herz legen: http://tools.ietf.org/html/rfc4180

Da ich selbst schonmal eine Klasse zur Verarbeitung von CSV-Dateien geschrieben habe (allerdings in einer anderen Programmiersprache ) kann ich aus eigener Erfahrung sagen: so schwer wie es vielleicht auf den ersten Blick aussieht ist das gar nicht! Also hab ruhig Mut und versuche dich an einer eigenen Implementation, bevor du bereits fertigen Code nutzt
Jonas
  Mit Zitat antworten Zitat
Thom

Registriert seit: 19. Mai 2006
570 Beiträge
 
Delphi XE3 Professional
 
#8

AW: CSV Import

  Alt 11. Apr 2011, 17:52
Das kann aber auch nur der Anfang sein, da ja zumindest theoretisch das Trennzeichen auch in den Nutzdaten vorkommen kann.
Gibt's dafür nicht die Eigenschaft QuoteChar?
Thomas Nitzschke
Google Maps mit Delphi
  Mit Zitat antworten Zitat
MB3rlin

Registriert seit: 11. Apr 2011
Ort: Berlin
3 Beiträge
 
#9

AW: CSV Import

  Alt 19. Apr 2011, 16:38
Danke für eure Hilfe , anhand der Beispiele von Metallicwar und Luckie hat es geklappt
  Mit Zitat antworten Zitat
A.Griffin

Registriert seit: 17. Feb 2017
94 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#10

AW: CSV Import

  Alt 28. Aug 2017, 12:45
Ich weiß, dass hier wär ein wenig necro aber ich hätte noch eine Frage. Was für eine Klasse ist bei Metallicwar "tTabelle"?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 23:26 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