Einzelnen Beitrag anzeigen

EMS

Registriert seit: 19. Dez 2012
97 Beiträge
 
#13

AW: Record in Datei speichern

  Alt 19. Dez 2012, 14:21
So der Compiler läuft jetzt durch

Beim klicken des Buttons kommt nun ein Fenster

Projekt projekt1 hat Exception-Klasse>>External:
SIGSEGV<< ausgelöst.

In Datei'unit1.pas' in Zeile 50:
begin

Das ist nach der procedure Zieleerfassen




Delphi-Quellcode:
unit Unit1;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

  { TForm1 }

  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

  TZiel = record
    Ort:String[20];
    Preis: real;
  end;


  TZielListe = record
    Ziele: array[1..100] of TZiel;
    ZielZahl: integer;
  end;

TZielFile = file of TZiel;


var
  Form1: TForm1;
  ZielListe: TZielListe;
  ZielFile: TZielFile;
  I: Integer;

implementation

{$R *.lfm}

{ TForm1 }

procedure ZieleErfassen(var Liste: TZielListe);
begin
     with Liste do
       begin
       Ziele[1].Ort:='Dresden';
       Ziele[1].Preis:=16.00;

       with Ziele[2] do
          begin
          Ort := 'Berlin';
          Preis := 43.00;
          end;

             with Ziele[3] do
             begin
             Ort :='Aachen';
             Preis := 155.00;
             end;

        ZielZahl :=3;
       end;

ZieleErfassen(ZielListe);
Assign(Zielfile, 'C:\Users\Desktop\adress.dat');
Rewrite(Zielfile);
   with ZielListe do
      for I := 1 to ZielZahl do
      begin
      write(ZielFile, Ziele[I]);
      end;
Close(ZielFile);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  Zielliste:TZielliste;
begin
  ZieleErfassen(Zielliste);
end;
end.
  Mit Zitat antworten Zitat