AGB  ·  Datenschutz  ·  Impressum  







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

Werte aus String herausfiltern

Ein Thema von Fredbert · begonnen am 18. Okt 2005 · letzter Beitrag vom 20. Okt 2005
Antwort Antwort
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#1

Re: Werte aus String herausfiltern

  Alt 19. Okt 2005, 09:13
Hallo Fredbert,

herzlich willkommen in der Delphi-PRAXiS.

Lösungen können tendenziell nur so gut sein, wie die Problembeschreibung. Ohne Umschweife würde ich deine im Eröffnungsbeitrag gestellte Frage so beantworten:

Delphi-Quellcode:
uses
  Classes;

var
  slLines, slValues: TStrings;
  fileName: string;
  i, iLines: integer;
  iSum: Int64;

// Kleinere Dateien können komplett im Hauptspeicher verarbeitet werden
begin
  // Container für die Textzeilen mit den drei Werten
  slLines := TStringList.Create;

  // Container für die Zerlegung einer Zeile in drei Werte
  slValues := TStringList.Create;
  slValues.Delimiter := ' ';

  // Dateiname ist erster Aufrufparameter
  fileName := ParamStr(1);

  // Datei Laden
  slLines.LoadFromFile(fileName);

  for iLines := 0 to Pred(slLines.Count) do
  begin
    // Zeile an Leerstellen zerlegen
    slValues.DelimitedText := slLines[iLines];
    iSum := 0;
    // Zahlenwerte konvertieren und summieren
    for i := 0 to Pred(slValues.Count) do
      iSum := iSum + StrToInt(slValues[i]);
    // ...
  end;
end;
Wenn die Datei für diese Vorgehensweise zu groß ist, dann musst du sie zeilenweise verarbeiten:

Delphi-Quellcode:
var
  f: TextFile;
  i, iValue: integer;
  iSum: Int64;
begin
  AssignFile(f, fileName);
  Reset(f);

  while not Eof(f) do
  begin
    iSum := 0;
    for i := 1 to 3 do
    begin
      Read(f, iValue);
      iSum := iSum + iValue;
    end;
    ReadLn(f);
  end;

  CloseFile(f);
end;
Vielleicht gibt dir das ein paar Denkanstöße, wie du dein Problem lösen kannst. Code zum Überprüfen von möglichen Fehlern musst du selbst dazu schreiben.

Grüße vom marabu
  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 17:33 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-2025 by Thomas Breitkreuz