AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Problem beim Ermitteln der Zahl der Elemente einer Textdatei
Thema durchsuchen
Ansicht
Themen-Optionen

Problem beim Ermitteln der Zahl der Elemente einer Textdatei

Ein Thema von Gelmo · begonnen am 10. Feb 2022 · letzter Beitrag vom 12. Feb 2022
Antwort Antwort
Seite 1 von 2  1 2      
Gelmo

Registriert seit: 14. Sep 2006
Ort: Niederrhein
31 Beiträge
 
Delphi 10.3 Rio
 
#1

Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 19:07
Delphi-Version: 10.3 Rio
Hallo zusammen!
Ich möchte feststellen, wieviele Elemente sich in einer Textdatei befinden.
Dazu habe ich durch einen Link in diesem Forum eine Formel gefunden, die ich für meine Zwecke so umformuliert habe:
Delphi-Quellcode:
var
SZF_Elemente : Byte;
AktDatei : String;
...
AktDatei:=OpenDialog1.Filename;
...
SZF_Elemente:=Ord(High(AktDatei))-Ord(Low(AktDatei))+1;
...
Wie ist dann zu erklären, dass als Ergebnis >>101<< angezeigt wird, wenn ich die Datei mit dem Editor öffne, aber 81 Zeilen zu zählen sind?
Die Datei enthält tatsächlich nichts als die Inhalte von 81 Sudoku-Kästchen, entweder die darin enthaltenen Ziffern oder eine Null bei leeren Kästchen.
Ich möchte aber für Zwischenergebnisse noch die Bytewerte für Stunden 😊, Minuten und Sekunden anhängen, die für eine Lösung bisher verstrichen sind. Um Fehler beim Auslesen der Dateien zu vermeiden, möchte ich die Länge vorher feststellen.
Hat da vielleicht jemand eine Idee, wie die Elementezahl zuverlässig bestimmt werden kann?
Dafür vielen Dank
MfG Gelmo
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#2

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 20:05
Kannst du mal erklären, was in der Datei stehen soll?
Wie sind die Daten getrennt?
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
Gelmo

Registriert seit: 14. Sep 2006
Ort: Niederrhein
31 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 20:19
Nun, die einzelnen Strings werden mittels writln in eine Textdatei geschrieben.
Delphi-Quellcode:
...
var
  sf : Textfile;
...
Assignfile(sf,AktDatei);
for ui:=1 to 81 do writln(Feldinhalt[ui]);
closefile(f);
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#4

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 20:21
Der Code im OP oben agiert auf dem Dateinamen, nicht dem Inhalt. Fehlt da was, oder sieht der Code wirklich so aus? Wie wär's mit TStringList.LoadFromFile und einem nachfolgenden TStringList.Count?

Grüße
Dalai
  Mit Zitat antworten Zitat
Gelmo

Registriert seit: 14. Sep 2006
Ort: Niederrhein
31 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 20:52
Der Code funktioniert ohne Fehlermeldung, liefert aber ein falsches Ergebnis. Wenn ich AktDatei durch sf ersetze, erscheint die Fehlermeldung "Inkompatible Typen".
Ich werde mal die Lösung mit Stringlist versuchen; dann kann ich aber zahlreiche Dateien nicht einfach weiter verwenden.
Einfacher wäre es für mich jetzt, die Anzahl der Elemente einer Textdatei im Voraus feststellen zu können.
Jedenfalls herzlichen Dank!
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.633 Beiträge
 
Delphi 12 Athens
 
#6

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 20:55
Einfacher wäre es für mich jetzt, die Anzahl der Elemente einer Textdatei im Voraus feststellen zu können.
Wie oben beschrieben. In eine Stringlist landen und dann mit Count hast du dann die Zeilenanzahl (wenn es sich nur um Strings handelt)
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#7

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 10. Feb 2022, 21:05
Wie schon gesagt, dein Code liefert das richtige Ergebnis, jedenfalls das, welches dein Code da produzieren soll.

= Anzahl der Zeichen (Chars) im Text


Wenn man deinen Code kürzt, dann kommt SZF_Elemente := {High} Length(AktDatei) - {Low} 1 + 1; dabei raus, also letztendlich SZF_Elemente := Length(AktDatei); ,
wobei "AktDatei" einfach nur der Text mit dem Dateinamen ist, also nicht der Dateiinhalt


Zum Schreiben und Lesen einfach eine Delphi-Referenz durchsuchenTStringList
oder ein String-Array und dann Delphi-Referenz durchsuchenTFile.ReadAllLines und TFile.WriteAllLines,
anstatt dieser "uralten" Pascalfunktionen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (11. Feb 2022 um 14:36 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.275 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 11. Feb 2022, 05:18
Hallo,
um es noch einmal zu sagen.

Dein Code hat nichts mit dem Inhalt der Datei zu tun.
Nimm mal die gleiche Datei und häng an den Dateinamen ein Zeichen an.

Das Ergebnis wäre dann wohl 102.
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#9

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 11. Feb 2022, 08:46
Zum Schreiben und Lesen einfach eine Delphi-Referenz durchsuchenTStringList
kann ich auch nur hinempfehlen. stampf diesen dinosaurier quelltext ein und willkommen im jetzt.
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
701 Beiträge
 
Delphi 12 Athens
 
#10

AW: Problem beim Ermitteln der Zahl der Elemente einer Textdatei

  Alt 11. Feb 2022, 17:38
Hallo zusammen!
Ich möchte feststellen, wieviele Elemente sich in einer Textdatei befinden.
Dann erzähl uns erstmal was Du unter "Element" verstehst. Zeichen, Zeilen, Worte, Paragraphen...
Peter Below
  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 08:20 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