AGB  ·  Datenschutz  ·  Impressum  







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

Chars in *.cvs pro Zeile zählen

Ein Thema von Lamiadon · begonnen am 29. Dez 2006 · letzter Beitrag vom 29. Dez 2006
Antwort Antwort
Lamiadon

Registriert seit: 12. Okt 2006
Ort: Ahausen
4 Beiträge
 
#1

Chars in *.cvs pro Zeile zählen

  Alt 29. Dez 2006, 14:44
Mahlzeit!

So einige kennen hier ja bestimmt csv Dateien. Die sind mit Excel herstellbar und gut geeignet um mit ihnen Datenbanken zu bearbeiten. Nun will ich aus einer csv die Seperatoren( ein ';') pro Zeile zählen und einen Fehler ausgeben, wenn es weniger als x sind. Ich habe in der beigelegten Hilfe zu meiner Delphi 3-Version nichts dazu gefunden, auch Google und SuFu hat mir nichts gebracht...
die normalen Such-Befehle bringen ja leider nicht raus, wie oft ein Char pro Zeile vorhanden ist, was ich sonst nutzen könnte.

Danke schonmal im Voraus

~Lamiadon
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.757 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Chars in *.cvs pro Zeile zählen

  Alt 29. Dez 2006, 14:54
Hallo,

da es in Delphi3 posex noch nicht gibt, wird Dir nicht
viel anderes übrigbleiben als die Zeile Buchstabe für Buchstabe durchzugehen.

Delphi-Quellcode:
for i:=1 to lenght(zeile) do
  if zeile[i] = ';then
    inc(counter);
Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von mpth
mpth

Registriert seit: 29. Dez 2006
Ort: Saarbrücken
13 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Chars in *.cvs pro Zeile zählen

  Alt 29. Dez 2006, 14:55
Delphi-Quellcode:
function ZaehleZeichen(const zeile: String; const suchzeichen: Char): integer;
var
  i: integer;
begin
  Result := 0;
  if Length(zeile) > 0 then
    for i := 1 to Length(zeile) do
      if zeile[i] = suchzeichen then
        Result := Result + 1;
end;
allerdings werden damit nicht vorkommen von ; (= suchzeichen) innerhalb von felddaten (also innerhalb von gänsefüßchen) ausgelassen...
hexen ist keine kunst, sondern harte arbeit!
  Mit Zitat antworten Zitat
Benutzerbild von _frank_
_frank_

Registriert seit: 21. Feb 2003
Ort: Plauen / Bamberg
922 Beiträge
 
Delphi 3 Professional
 
#4

Re: Chars in *.cvs pro Zeile zählen

  Alt 29. Dez 2006, 14:59
Zitat von mpth:

allerdings werden damit nicht vorkommen von ; (= suchzeichen) innerhalb von felddaten (also innerhalb von gänsefüßchen) ausgelassen...
aber so solltes dies funktionieren:

Delphi-Quellcode:
function ZaehleZeichen(const zeile: String; const suchzeichen: Char): integer;
var
  i: integer;
  quoted:boolean;
begin
  Result := 0;
  quoted:=false;
  if Length(zeile) > 0 then
    for i := 1 to Length(zeile) do
    begin
      if (zeile[i] = '"') then
        quoted:=not quoted
      else
        if (zeile[i] = suchzeichen) and (not quoted) then
          Result := Result + 1;
    end;
end;
HTH Frank
  Mit Zitat antworten Zitat
Benutzerbild von mpth
mpth

Registriert seit: 29. Dez 2006
Ort: Saarbrücken
13 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Chars in *.cvs pro Zeile zählen

  Alt 29. Dez 2006, 15:01
genau
hexen ist keine kunst, sondern harte arbeit!
  Mit Zitat antworten Zitat
Lamiadon

Registriert seit: 12. Okt 2006
Ort: Ahausen
4 Beiträge
 
#6

Re: Chars in *.cvs pro Zeile zählen

  Alt 29. Dez 2006, 15:10
joa, danke, schnell wie immer ^^

werde die möglichkeit probieren, die zweite von oben zu nehmen, weil in den Dateien keine ';' außer den Seperatoren vorkommen, und ausprobieren, sobald ich da durchgestiegen bin, bin schließlich noch neuling und muss ersma die befehle in der hilfe nachgucken, schließlich will ich nichts verwenden, was ich nicht auch verstehe.

~Lamiadon

edit: also, wenn ich das richtig sehe, sind "suchzeichen" und "Zeile" Platzhalter, oder
Kann ich diese function so auf eine TStringList anwenden

*hat noch nicht viel mit functions gearbeitet*
  Mit Zitat antworten Zitat
Antwort Antwort


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 04:47 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