AGB  ·  Datenschutz  ·  Impressum  







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

String mit Trennzeichen in Array?

Ein Thema von draxo · begonnen am 4. Mär 2008 · letzter Beitrag vom 5. Mär 2008
Antwort Antwort
Seite 1 von 2  1 2      
draxo

Registriert seit: 9. Mär 2007
14 Beiträge
 
Delphi 2007 Enterprise
 
#1

String mit Trennzeichen in Array?

  Alt 4. Mär 2008, 20:01
Hallo!

ich lese eine CSV-Datei aus. Jede Zeile wird einzeln verarbeitet.
Dabei würde ich diese Zeile gerne in ein Array einlesen.

Geht soetwas auch einfacher, als mit Pos, Copy und Delete zu arbeiten und alles
manuell zu machen?

Danke
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: String mit Trennzeichen in Array?

  Alt 4. Mär 2008, 20:02
Nein.

In der Code-Library findest du aber fertigen Code dafür. Such einfach mal nach explode.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: String mit Trennzeichen in Array?

  Alt 4. Mär 2008, 20:12
Oder mit Hilfe einer Stringliste
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: String mit Trennzeichen in Array?

  Alt 4. Mär 2008, 20:12
...welche immer noch den Bug (das Feature?) hat, dass Leerzeichen immer als Delimiter gewertet werden.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: String mit Trennzeichen in Array?

  Alt 4. Mär 2008, 20:15
Zitat von 3_of_8:
...welche immer noch den Bug (das Feature?) hat, dass Leerzeichen immer als Delimiter gewertet werden.
Das war bis D6 as designed. Ab D7 kann man das Verhalten durch die Eigenschaft StrictDelimiter aber abschalten
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: String mit Trennzeichen in Array?

  Alt 5. Mär 2008, 08:21
Zitat von mkinzler:
Zitat von 3_of_8:
...welche immer noch den Bug (das Feature?) hat, dass Leerzeichen immer als Delimiter gewertet werden.
Das war bis D6 as designed. Ab D7 kann man das Verhalten durch die Eigenschaft StrictDelimiter aber abschalten
So ist es.
Bis neulich habe ich nämlich auch das Explode benutzt.
Das ist aber meiner Meinung nach zu unperformant.

Eine Stringlist mit StrictDelimiter und DelimitedText ist genauso anwenderfreundlich.
Ich finde die Stringlist irgendwie sympatischer, vor allem, weil man auf das TStringDynArray = array of string; verzichten kann.
Irgendwie habe ich eine Abneigung zu Arrays. 8)
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: String mit Trennzeichen in Array?

  Alt 5. Mär 2008, 12:20
Unperformant? Ich bezweifle, dass eine TStringList schneller ist.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: String mit Trennzeichen in Array?

  Alt 5. Mär 2008, 12:46
Zitat von 3_of_8:
Unperformant? Ich bezweifle, dass eine TStringList schneller ist.
Na schön, eine TStringList ist intern auch nix anderes, als ein dynamisches Array.
Das SetDelimitedText macht auch nicht viel anderes als das Explode.
Aber irgendwie kommt mir die StringList sympatischer rüber, weil eben alles in einer Klasse vereint ist.

Das mit der Gesachwindigkeit müsste man halt mal testen.
Wie ist es bei kleinen Strings, wie bei grossen Strings?
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: String mit Trennzeichen in Array?

  Alt 5. Mär 2008, 14:04
Ziemlich gleich, vermutlich. Das, was du sagst, hat aber nichts mit Performanz zu tun. Es ist einfacher, es ist übersichtlicher, aber nicht performanter.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
draxo

Registriert seit: 9. Mär 2007
14 Beiträge
 
Delphi 2007 Enterprise
 
#10

Re: String mit Trennzeichen in Array?

  Alt 5. Mär 2008, 17:16
Zitat von mkinzler:
Oder mit Hilfe einer Stringliste
Hier hat sich ja einiges getan - vielen Dank dafür

Wenn ich jetzt mit einer TStringList arbeiten will, wie schaut das dann aus?
Also ich habe aktuell die csv-Datei in der Stringliste aus den kompletten Inhalt bekomme
auch auch heraus.

Aber wie komme ich in Zeile 1 an das "Element" an Posisition 1?

Also wenn man folgendes hat (als CSV-Datei):

A;B;C
D;E;F

Wie würde ich da an das A kommen?
  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 17:12 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