AGB  ·  Datenschutz  ·  Impressum  







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

Speichern funktioniert nicht!

Ein Thema von Chuqa · begonnen am 1. Okt 2005 · letzter Beitrag vom 2. Okt 2005
Antwort Antwort
Chuqa

Registriert seit: 10. Jan 2005
51 Beiträge
 
#1

Speichern funktioniert nicht!

  Alt 1. Okt 2005, 00:17
Hi,

ich möchte Datem aus einem Array speichern. Das Array hat als Datentyp einen Selbstdeklarierten.
Nun habe ich speicher ich wie folgt:

Delphi-Quellcode:
procedure Speichern();
var name:String;
      datei:textfile;
      x: integer
begin
      if Form1.SaveDialog1.Execute then
      begin
        name:=Form1.SaveDialog1.FileName;
        try
            AssignFile(datei,name);
            rewrite(datei);
            for x:=0 to 200 do //alle Array-elemente
            begin
                writeln(datei,Array[x].Name+'$'+Array[x].Vorname+'$'+
                            Array[x].Geb+'$'+Array[x].Strasse+'$'); //sämtliche Variablen spichern
            end;
            closefile(datei);
            messagedlg('Erfolgreich gespeichert !',mtinformation,[mbok],0);
        except
        messagedlg('Fehler beim speichern!',mtinformation,[mbok],0);
        exit;
        end;
      end;
end;
Das $-Zeichen benutze ich später als Trennung der einzelnen Variablen, damit ich die Datei wieder auslesen kann. Nun stürzt das Programm allerdings beim speichern ab, mit der Fehlermeldung, dass eine Execption der Klasse "EAccessViolation" aufgetreten sei, dann noch Zugriffsverletzungen bei Speicheradressen. Wenn ich nur ein Element speicher, bringt er keine Fehlermeldung. Ich habe es auch mit 2 und 3 Elementen + $-Zeichen probiert, ging bei manchen auch, aber es geht nicht mit allen, das ist sehr sonderbar. Weiß jemand was ich falsch mache?
Gruß Chuqa
  Mit Zitat antworten Zitat
neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#2

Re: Speichern funktioniert nicht!

  Alt 1. Okt 2005, 00:53
Höchstwahrscheinlich greifst du auf ein Element zu was überhaupt nicht exisiert!

Wie hast du Array deklariert? Und wieso hat diese Variable keinen vernüpftigen, aussagekräftigen Namen?
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat
Chuqa

Registriert seit: 10. Jan 2005
51 Beiträge
 
#3

Re: Speichern funktioniert nicht!

  Alt 1. Okt 2005, 10:39
Zitat von neolithos:
Höchstwahrscheinlich greifst du auf ein Element zu was überhaupt nicht exisiert!
Wenn das so wäre, würde Delphi doch einen Syntaxfehler melden.
Zitat von neolithos:
Wie hast du Array deklariert? Und wieso hat diese Variable keinen vernüpftigen, aussagekräftigen Namen?
Das Array hat einen aussagekräftigen Namen. Das soll nur lediglich eine Beispiel darstellen, wie ich den Code geschrieben habe. Es sind im original noch diverse Prüfungen vorhanden, die aber für mein Problem nicht von Bedeutung sind. Das Programm bricht halt an der Stelle writeln(datei,...) mit der obengenannten Fehlermeldung ab.
Gruß Chuqa
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#4

Re: Speichern funktioniert nicht!

  Alt 1. Okt 2005, 10:45
Zitat von Chuqa:
Zitat von neolithos:
Höchstwahrscheinlich greifst du auf ein Element zu was überhaupt nicht exisiert!
Wenn das so wäre, würde Delphi doch einen Syntaxfehler melden.
Wie soll Delphi denn zur Kompilierzeit wissen, welche Indizes du benutzt ? Hast du die Bereichsprüfung eingeschaltet? Hast du beim Debuggen den Inhalt des Arrays geprüft?
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Speichern funktioniert nicht!

  Alt 1. Okt 2005, 10:46
beim wievielten Schleifendurchlauf passiert das, schon beim ersten?
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Chuqa

Registriert seit: 10. Jan 2005
51 Beiträge
 
#6

Re: Speichern funktioniert nicht!

  Alt 1. Okt 2005, 11:00
@Khabarakh

Also eigentlich hab ich ne Bereichsprüfung da drin, aba da schau ich auch noch ma nach, weil da sowieso etwas noch nicht passt.

@SirThornberry

Ja wenn es passiert, dann gleich beim ersten Schleifendurchlauf.
Gruß Chuqa
  Mit Zitat antworten Zitat
Chuqa

Registriert seit: 10. Jan 2005
51 Beiträge
 
#7

Re: Speichern funktioniert nicht!

  Alt 2. Okt 2005, 14:28
Ok war ein richtig dummer Fehler. Habe erst jetzte wieder mit Delphi gearbeitet und vorher mit Java und C++. Das Problem dabei ist, dass die Array bei Java usw. bei 0 beginnen, und bei Delphi habe ich es bei 1 beginnen lassen. Die Prüfung habe ich natürlich wie von Java gewohnt bei 0 beginnen lassen, deswegen kam es zur Zugriffsverletzung. Also schon dumm . Ich danke euch allen, die sich die Mühe gemacht mir zu helfen.

mfg Chuqa
Gruß Chuqa
  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 12:17 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