Entwickler-Ecke
Dateizugriff - anzahl der "spalten" bei *.csv
Morpheus1572 - Mi 03.09.08 22:17
Titel: anzahl der "spalten" bei *.csv
Hi Leutz,
vielleicht gibt es in diesen unzähligen einträgen die lösung, wenn ja habe ich sie nicht gefunden, sorry!!!
Deshalb stelle ich diese frage jetzt u.U. noch mal.
ich lese eine csv-datei in ein StringGrid. die anzahl der benötigten zeilen erfahre ich ja durch StringGrid.RowCount:=meineListe.Count....
damit kann ich also eine exakte Tiefe meines Grids anlegen. Wie erhalte ich aber die benötigten Spalten??? ich muss dafür ja irgendwie dem Wert 'StringGrid.ColCount' etwas zu weisen aber wie?????
Bitte um Hilfe.
Gruß Morph.
Xentar - Mi 03.09.08 22:41
Hm.. was mir spontan einfällt:
- Nimm die erste Zeile aus der CSV Datei
- Pack diese in eine StringList.CommaText
- In StringList.Count hast du nun deine Spaltenzahl
jaenicke - Do 04.09.08 02:08
Die zusätzliche StringList ist gar nicht nötig, so gehts zum Beispiel auch:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20:
| uses StrUtils;
...
function GetOccurrenceCount(uText, uSearchText: String): Integer; var CurrentPos: Integer; begin Result := 0; CurrentPos := Pos(uSearchText, uText); while CurrentPos > 0 do begin Inc(Result); CurrentPos := PosEx(uSearchText, uText, CurrentPos + 1); end; end;
GetOccurrenceCount('Deine,Zeile,mit,Kommata', ',') |
// EDIT:
Und wenn es nur um ein Zeichen geht geht es auch noch einfacher (schneller und ohne zusätzliche Unit):
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| function GetOccurrenceCount2(uText: String; uSearch: Char): Integer; var i: Integer; begin Result := 0; for i := 1 to Length(uText) do if uText[i] = uSearch then Inc(Result); end; |
mkinzler - Do 04.09.08 07:31
Oder man verwendet die Kombination eines CSV-DataSets und einem DBGrid
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!