Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi CSV-Datei (https://www.delphipraxis.net/62228-csv-datei.html)

Chester 1. Feb 2006 16:53

Datenbank: Oracle • Zugriff über: ODBC

CSV-Datei
 
Hi!


Ich hänge seit Stunden an einer .CSV fest!
Wenn ich die CSV-Datei aus einem Grid heraus erstelle, dann hab ich immer die Überschriften vom DBGrid dabei bzw. leere Strings wenn ich den Spalten keinen Namen gebe.


Ich erstelle, versende und lösche die Datei, deswegen sollte es einfach und schnell funktionieren



thx schon mal :love:

Luckie 1. Feb 2006 17:05

Re: CSV-Datei
 
Überspring doch einfach die erste Zeile.

Chester 1. Feb 2006 17:17

Re: CSV-Datei
 
Das Problem ist das es mir dann die erste Zeile überspringt und nicht die Überschriften.

Das Grid ist eine TMS-Komponente (TDBADVStringGrid)
und so könnte ich das machen


Delphi-Quellcode:
AdvStringGrid.SaveToCSV(DateiName);
oder mit einer Excel-Komponente

Delphi-Quellcode:
ADVGridExcelIO.AdvStringGrid.AppendToCSV(DateName);
aber mit Zeile überspringen geht das nicht

:coder2:

Luckie 1. Feb 2006 18:48

Re: CSV-Datei
 
Dann hättest du sagen sollen, dass du nicht das normale StringGrid verwendest und die CSV Datei selber schreibst. Schon mal in der Dokumentation geguckt, ob es eine Eigenschaft gibt, die das Schreiben der Spaltennamen verhindert? Sollte es die nicht geben, dann wird dir wohl nur eins übrigbleiben, nämlich selbst die Zellen auszulesen und in eine datei zu schreiben. Ist ja nicht die Welt und mit 10 Zeilen Code und 10 Minuten Zeit selber gemacht.

Kevin 1. Feb 2006 19:16

Re: CSV-Datei
 
Hat das TMS-ADVGridExcelIO nicht eine Option "GridStartRow"...?! :gruebel:

alzaimar 2. Feb 2006 09:01

Re: CSV-Datei
 
Zitat:

Zitat von Luckie
... Ist ja nicht die Welt und mit 10 Zeilen Code und 10 Minuten Zeit selber gemacht.

Mal sehen:
Delphi-Quellcode:
Var
  s : TStringList;

Begin
  s := TStringList.Create;
  Try
    s.LoadFromFile(MyExportedCSVFile);
    s.delete(0);
    s.SaveTofile(MyExportedCSVFile);
  Finally
    s.Free;
  End;
End;
10 Zeilen kommt hin, aber 10 Minuten? 1/2 trifft die Sache eher :mrgreen:

Chester 2. Feb 2006 10:09

Re: CSV-Datei
 
Funktioniert super

Danke für die Hilfe :-D


ohne DP wäre ich manchmal aufgeschmissen....

Kevin 2. Feb 2006 10:12

Re: CSV-Datei
 
Hast Du mal nach der Option geguckt?

Grolle 2. Feb 2006 10:58

Re: CSV-Datei
 
Hallo!
Die Eigenschaft für das mit speichern der Überschriften in einem TMS-Grid
ist imho die Option : Grid.SaveFixedCells := boolean.

Viele Grüße...

Chester 2. Feb 2006 11:41

Re: CSV-Datei
 
Habt ihr auch eine Idee wie man die Werte zwischen "Wert" setzt und statt , mit ; trennt?

alzaimar 2. Feb 2006 11:52

Re: CSV-Datei
 
Die Sache mit dem Komma, ist eine Schlamperei, die sich seit 150 Jahren durch die Programmiergemeinde zieht und von Microsoft ausgeht: CSV heisst ja eigentlich 'Comma Separated Values'. Also denken Alle, das das Komma, das Trennzeichen ist. Stimmt aber nicht. es ist der 'ListSeparator' aus den internationalen Einstellungen des Control Panels (Systemsteuerung).

Wenn TMS das nicht richtig umgesetzt hat, dann musst Du Dir deine eigene CSV-Export-Routine schreiben. Oder die Textdatei anschließend einlesen, parsen, reparieren und dann speichern.

Kevin 2. Feb 2006 12:09

Re: CSV-Datei
 
Zitat:

Zitat von Chester
Habt ihr auch eine Idee wie man die Werte zwischen "Wert" setzt und statt , mit ; trennt?

AdvStringGrid.Delimiter := ';';

Kevin 2. Feb 2006 12:13

Re: CSV-Datei
 
Zitat:

Zitat von alzaimar
'Comma Separated Values'

Mittlerweile spricht man auch schon immer häufiger von 'Character Separated Value', genau aus diesem Grund...

Zitat:

Zitat von alzaimar
Wenn TMS das nicht richtig umgesetzt hat

TMS kann das, nur Chester (noch) nicht... :zwinker:

Chester 2. Feb 2006 15:16

Re: CSV-Datei
 
Ich bekomme das einfach nicht hin...

Die Hilfe die ich von euch bekommen habe ist 1a, aber ein Problem hab ich noch:


Wie setze ich jeden Wert zwischen "

z.b. "Wert"


:duck:

Kevin 2. Feb 2006 15:21

Re: CSV-Datei
 
AdvStringGrid.AlwaysQuotes := true;

Sollte helfen...

Chester 2. Feb 2006 15:25

Re: CSV-Datei
 
1000 thx

ihr habt mir stunden langes nicht draufkommen erspart


:hello:

alzaimar 2. Feb 2006 15:26

Re: CSV-Datei
 
Und auch mal in der Beschreibung der AdvStringGrid-Komponente suchen.

Kevin 2. Feb 2006 16:03

Re: CSV-Datei
 
Zitat:

Zitat von Chester
1000 thx

ihr habt mir stunden langes nicht draufkommen erspart


:hello:

Wollte ich auch grad schreiben, denn die Beschreibungen sind recht einfach gehalten. Also ein klares "RTM" ohne "F"... :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 06: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 by Thomas Breitkreuz