AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi TextFile und System.Seek machen im Zusammenspiel Probleme
Thema durchsuchen
Ansicht
Themen-Optionen

TextFile und System.Seek machen im Zusammenspiel Probleme

Ein Thema von scouty · begonnen am 25. Feb 2004 · letzter Beitrag vom 26. Feb 2004
Antwort Antwort
scouty

Registriert seit: 27. Nov 2003
Ort: Dresden
47 Beiträge
 
#1

TextFile und System.Seek machen im Zusammenspiel Probleme

  Alt 25. Feb 2004, 18:37
Ich habe folgendes Problem:
Ich möchte auf Daten in einer CSV_Datei zugreifen. Um dies möglichst komfortable zu gewährleisten, habe ich ein Objekt erstellt TCSVManager. Dieses Objekt besitzt u.a. das Attribute FFile vom Typ TextFile mit der CSV-Datei.

Code:
 
TCSVManager = class(TComponent)
private
 FFile: TextFile;
Protected
 Function GetColNo: Integer;
     ...
end;
Nun mein Problem:


Delphi-Quellcode:
function TCSVManager.GetColNo: Integer;
var S: String;
begin
  Seek(FFile, 0);
  ReadLn(FFile, S);
  Result := Explode(S, ';').Count;
end;

Wenn ich in der Funktion die Procedure System.Seek verwenden will, um die Position auf die Zeile in der Datei zu bestimmen, dann nervt mich Delphi mit einer Exception “Inkompatible Typen“, welche ich mir hier nicht erklären kann. Wenn ich meiner Literatur und dem Delphi Forum / Suche: "TextFile" AND "Seek" folge, dann müsste ich die Prozedure Seek mit Textfilen verwenden können. Aber wo liegt dann das Problem???


Also, wenn hier einer eine Idee hat, dann wäre ich sehr dankbar.


Greetings Scouty
  Mit Zitat antworten Zitat
Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#2

Re: TextFile und System.Seek machen im Zusammenspiel Problem

  Alt 25. Feb 2004, 22:31
also die Delphi Hilfe meinte was anderes ..
Miniaturansicht angehängter Grafiken
seek.png  
  Mit Zitat antworten Zitat
scouty

Registriert seit: 27. Nov 2003
Ort: Dresden
47 Beiträge
 
#3

Re: TextFile und System.Seek machen im Zusammenspiel Problem

  Alt 26. Feb 2004, 10:37
Danke, dann muss ich das übersehen haben. Aber wie kann ich mich dann in einer Textdatei auf eine bestimmte Zeile bewegen???


Greetings Joerg
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#4

Re: TextFile und System.Seek machen im Zusammenspiel Problem

  Alt 26. Feb 2004, 10:44
Hallo Jörg!

Da gibt es 2 Möglichkeiten:
1. die Textdatei zeilenweise mit ReadLn einlesen bis die gesuchte Zeile da ist. Ändern von Zeilen ist dann allerdings nicht möglich (oder es wird eine neue Datei geschrieben). Außerdem müssen die Zeilen in Reihenfolge bearbeitet werden - ein "Zurückspulen" der Datei ist nicht möglich.

2. die Datei mit LoadFromFile in eine Stringlist einlesen. Dann kannst Du einzelne Zeilen in beliebiger Reihenfolge ändern und danach das Ganze mit SaveToFile wieder auf die Platte packen.

Die 2. Methode ist Windows-Konform, braucht aber viel Speicher (nach Windows wird normalerweise die ganze Datei in den Speicher gelesen - wir haben ja 2 GB). Deshalb bevorzuge ich die erste Variante!

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  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 19:48 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