AGB  ·  Datenschutz  ·  Impressum  







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

Dateien nummeriert speichern?

Ein Thema von mlspider · begonnen am 28. Dez 2005 · letzter Beitrag vom 3. Mär 2006
Antwort Antwort
Seite 1 von 2  1 2      
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#1

Dateien nummeriert speichern?

  Alt 28. Dez 2005, 11:36
Moin,

Das Speichern einer Datei mit oder ohne Save Dialog ist eigentlich kein Thema. Nun stehe ich aber vor dem Problem, Dateien mit fortlaufender Nummer (zb. Daten01.txt, Daten02.txt usw.) zu speichern. Vorher sollte aber die letzte laufende Nummer geeprüft werden, um logischer Weise um eine Stelle zu erhöhen.

Wie könnte man vorgehen?

Danke.
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
heiopei
(Gast)

n/a Beiträge
 
#2

Re: Dateien nummeriert speichern?

  Alt 28. Dez 2005, 11:53
hallo, hab da mal für ne firmensoftware das gleiche problem gehabt.
ich hab das ganze in eine schleife gepackt, etwa so:

Delphi-Quellcode:

begin
  result := 1;
  while fileexists('datei' + IntToStr(result) + '.txt') do
  Inc(result);
end;
die funktion gibt also aus, welche datei mit index i noch nicht existiert - allerdings wird hierbei statt 01, 02, also alle zahlen < 10 nur 1, 2... erkannt!


mfg,
heiopei


//edit: sorry i und result vermischt
  Mit Zitat antworten Zitat
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Dateien nummeriert speichern?

  Alt 28. Dez 2005, 12:00
Eigentlich ist es völlig egal, ob es mit einer 0 angeführt wird, oder nicht.
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

Re: Dateien nummeriert speichern?

  Alt 28. Dez 2005, 12:06
Statt IntToStr kann man ja auch mal Format verwenden, da läßt sich dann auch 01, 02... realisieren.


Oder für 00 bis 99, kann man auch selber was zusammenstellen:
'datei' + IntToStr(i div 10) + IntToStr(i mod 10) + '.txt' und Efektiver geht's so (is sogar "besser" als Format)
'datei' + Chr(i div 10 + 48) + Chr(i mod 10 + 48) + '.txt'
[add]
Na wenn's egal ist, dann halt nur IntToStr(i), wie bereits gesagt -.-''
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
mlspider

Registriert seit: 22. Okt 2003
Ort: Berlin
661 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Dateien nummeriert speichern?

  Alt 28. Dez 2005, 12:09
Alles klar. Danke.
Mario
Handbücher haben einen hohen Heizwert!!!

http://geprellte-ebay-kaeufer.de
  Mit Zitat antworten Zitat
marabu

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

Re: Dateien nummeriert speichern?

  Alt 28. Dez 2005, 12:51
Hallo Mario,

einen Ansatz hätte ich noch:

Delphi-Quellcode:
// uses QFileCtrls;
function CountFiles(filespec: string): integer;
var
  d: TDirectory;
begin
  d := TDirectory.Create(nil);
  d.BeginUpdate;
  d.FileMask := ExtractFileName(fileSpec);
  d.Location := ExtractFilePath(fileSpec);
  d.FileType := [ftArchive];
  d.EndUpdate;
  Result := d.Count;
  d.Free;
end;
Wenn die Dateien fortlaufend und lückenlos nummeriert sind, dann liefert dir CountFiles('Daten*.txt') die letzte vergebene Dateinummer im Arbeitsverzeichnis.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von zebrafalke
zebrafalke

Registriert seit: 25. Feb 2006
155 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Dateien nummeriert speichern?

  Alt 2. Mär 2006, 20:17
Zitat:
'datei' + IntToStr(i div 10) + IntToStr(i mod 10) + '.txt'
Bei mir sagt er "Undefinierter Bezeichner 'i'

ich muss i also erst noch als was definieren, aber als was?


zebrafalke
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#8

Re: Dateien nummeriert speichern?

  Alt 2. Mär 2006, 20:27
Klar musst du i erst noch definieren.

Als was ? Integer oder Word wäre angebracht.

var i: Integer;
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
ichbins

Registriert seit: 9. Jul 2005
Ort: Hohenaltheim
1.001 Beiträge
 
Delphi 2005 Personal
 
#9

Re: Dateien nummeriert speichern?

  Alt 2. Mär 2006, 20:29
i ist IMMER eine Integer-Variable, zumindest nennt jeder seine Integervariablen i. Wenn die Variable dann auch noch in einer for-Schleife vorkommt gibt es ja gar keine andere Möglichkeit mehr als dass i eine Integervariable ist.
Michael Enßlin
Ich, der ich weiß, mir einzubilden, dass ich weiß, nichts zu wissen, weiß, dass ich nichts weiß.
Sokrates
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

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

Re: Dateien nummeriert speichern?

  Alt 3. Mär 2006, 11:07
Zitat von ichbins:
i ist IMMER eine Integer-Variable, zumindest nennt jeder seine Integervariablen i. Wenn die Variable dann auch noch in einer for-Schleife vorkommt gibt es ja gar keine andere Möglichkeit mehr als dass i eine Integervariable ist.
Der "beste" Datentyp für sowas wird wohl der Integer sein, denn er ist ja direkt auf die CPU / das Betriebssystem zugeschnitten ... und in einem 32-Bit-Betriebssystem und auf 'ner 32-Bit-CP wird es wohl ein LongInt sein ... und in den aktuellen Delphi-Versionen ist zufällt der Integer als LongInt definiert ^_^

PS: das IMMER solltest'e lieber klein schreiben ... klar nennen viele ihre Schleifen-, oder sonstigen variablen i, i2, i3, oder wie auch immer, dennoch MUß es nicht ein Integer sein
Und in 'ner For-Schleife kannst du auch andere ordinale Datentypen verwenden
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  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 21:56 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