Thema: Delphi CSV Datei erstellen

Einzelnen Beitrag anzeigen

AndiS75

Registriert seit: 25. Nov 2005
42 Beiträge
 
#1

CSV Datei erstellen

  Alt 25. Nov 2005, 10:34
Hallo erstmal,

bin neu hier im Forum und hab gleich mal eine Frage.
Ich möchte einen String in eine CSV Datei exportieren. Hier mal kurz mein Quellcode.

Delphi-Quellcode:

//GCSV wurde vorher als TStrings deklariert

GCSV.Text := 'Fahrzeugart;Interner Name;Angebotsart;Kategorie;Marke;Modell;Leistung;' +
                 'Hubraum;EZ;TUV;AU;Kmstand;Preis;Haendlerpreis;VHB;Sofortkaufpreis;Startpreis;' +
                 'Wiederbeschaffungswert;Mwst. ausweisbar;Mwstsatz;Arbeitskosten;Lackkosten;' +
                 'Ersatzteilkosten;Reparaturkosten;Anzeigedauer;Angebotsende/Enduhrzeit;' +
                 'Waehrung;Land;PLZ;Kraftstoff;Automatikgetriebe;Tueren;Farbe;Metallic;' +
                 'Unfallfahrzeug;Schadenbeschreibung;Vorschaden/Altschaden;Neufahrzeug;' +
                 'Jahresfahrzeug;Oldtimer;Taxi/Mietfahrzeug;Garantie;Info/Ausstattung;' +
                 'ABS;ESP;Allradantrieb;Anhaengerkuplung;Klimaanlage;Alufelgen;Lederausstattung;' +
                 'Sitzheizung;Wegfahrsperre;Navigationsystem;Zentralverriegelung;Tempomat;' +
                 'Serviceheft;Elektrostarter;Katalysator;Halbverkleidung;Vollverkleidung;' +
                 'Windschild;Topcase;EBS;Hydraulik;Intarder;Ladebordwand;Retarder;Schiebetuer;' +
                 'Trennwand;Vorfuehrfahrzeug;Kran;Tragkraft;Nutzlast;Gesamtgewicht;Hubhoehe;' +
                 'Bauhoehe;Betriebsstunden;Sitze;Schadstoff;Kabinenart;Achsen;Schlafplatz;TV;WC;' +
                 'Kompressor;Fronthydraulik;Frontheber;Kuehlanlage;Lueftfederung;Zentralschmierung;' +
                 'Standheizung;Kueche;Kraftstoffverbr.innerorts;Kraftstoffverbr.ausserorts;' +
                 'Kraftstoffverbr.ca. (im Durchschnitt);CO2-Emissionen kombiniert;' +
                 'Fahrzeughalter/Ansprechpartner Name;Fahrzeughalter/Ansprechpartner Vorname;' +
                 'Fahrzeughalter/Ansprechpartner Telefon;Fahrzeughalter/Ansprechpartner Mobil;' +
                 'Fahrzeughalter/Ansprechpartner E-Mail;Fahrzeughalter/Ansprechpartner Strasse Haus- Nr;' +
                 'Fahrzeughalter/Ansprechpartner Ort;Fahrzeughalter/Ansprechpartner PLZ;' +
                 'Fahrzeughalter/Ansprechpartner Land';



                 if CBMwSt.Text = 'n.ausweisbarthen
                 begin
                   hMwSTAus := '0';
                 end
                 else
                 begin
                   hMwSTAus := '1';
                 end;

                 if CBMwSt.Text = 'Deutschlandthen
                 begin
                   hLand := 'D';
                 end;

                 if BesAutomatik.Checked then
                 begin
                   hAutoMa := '1';
                 end
                 else
                 begin
                   hAutoMa := '0';
                 end;

                 if CBMetallic.Checked then
                 begin
                   hMetallic := '1';
                 end
                 else
                 begin
                   hMetallic := '0';
                 end;

                 GCSV.Text := GCSV.Text + CBFzgArt.Text + ';' + EditGaNr.Text + ';' + 'restwert'
                 + ';' +
                 CBKateg.Text + ';' + CBMarke.Text + ';' + EditModell.Text + ';' + EditLeist.Text
                 + ';' +
                 EditHubraum.Text + ';' + '00/' + EditEZ.Text + ';' + '00/' + EditTUEV.Text + ';' +
                 '00/' + EditTUEV.Text + ';' + EditKM.Text + ';' + '0' + ';' + ';' + '0' + ';' +
                 '0' + ';' + '0' + ';' + '0' + ';' + EditWieder.Text + ';' + hMwSTAus + ';' +
                 CBMwStSatz.Text + ';' + EditLohn.Text + ';' + EditLack.Text + ';' + EditErsatz.Text
                 + ';' +
                 EditGesamt.Text + ';' + CBAnzDauer.Text + ';' + CBAnzEnde.Text + ';' + CBWaehr.Text
                 + ';' +
                 CBOrtPlz.Text + ';' + hLand + ';' + EditPlz.Text + ';' + CBKraftStoff.Text + ';' +
                 hAutoMa + ';' + EditTueren.Text + ';' + CBFarbe.Text + ';' + hMetallic + ';' + ''
                 + ';' +
                 MemoUnfall.Text + ';' + MemoVorSchaden.Text + ';';
    
    //SDCSV SaveDialog

    with SDCSV do
    begin
      Filter := 'CSV Dateien (*.csv)|*.csv';
      FileName := EditGaNr.Text;
      DefaultExt := 'csv';
      Options := [ofOverwritePrompt];

      if Execute then GCSV.SaveToFile(FileName);
Das Problem ist nun, dass die Datei erstellt wird aber nicht korrekt dargestellt wird. Wenn ich die CSV Datei mit dem Editor öffne, werden die Datenfelder und die Werte korrekt dargestellt. Öffne ich die CSV Datei aber mit Excel, stimmen die Feldern und Werte nicht mehr überein.

Gruß

Andreas
  Mit Zitat antworten Zitat