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.ausweisbar'
then
begin
hMwSTAus := '
0';
end
else
begin
hMwSTAus := '
1';
end;
if CBMwSt.Text = '
Deutschland'
then
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