AGB  ·  Datenschutz  ·  Impressum  







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

Facharbeit: array abspeichern

Offene Frage von "Ravager"
Ein Thema von Ravager · begonnen am 15. Jan 2006 · letzter Beitrag vom 18. Jan 2006
Antwort Antwort
Ravager

Registriert seit: 7. Jan 2006
19 Beiträge
 
#1

Facharbeit: array abspeichern

  Alt 15. Jan 2006, 15:01
hi,

ich muss im Rahmen meiner Facharbeit zwei arrays abspeichern.
Code:
  data_src_light : Array[0..150,0..150] of Integer;  //Sensorwerte
  data_src_set  : Array[0..150,0..150] of boolean;  //Wert bekannt
am cleversten ist die sache wohl im csv-Tabllenformat, oder?

Gibt es dazu einen Spezialbefehl oder muss ich das Array selbst formatieren?

Wie würde das speichern und öffnen einer solchen Datei ablaufen?

Sorry wegen der Kindergartenfrage, aber ich habe gerade erst mit Delphi angefangen und musst noch nie Dateien schreiben und lesen ^^
  Mit Zitat antworten Zitat
brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#2

Re: Facharbeit: array abspeichern

  Alt 15. Jan 2006, 15:11
Delphi-Quellcode:
var data_src_light : Array[0..150,0..150] of Integer;
var f: file of byte;
begin
  BlockWrite(f,data_src_light,
    SizeOf(data_src_light[0])*length(data_src_light));
sollte nicht sowas in der Art gehen? (jetz nicht wirklich viel drüber nachgedacht)
  Mit Zitat antworten Zitat
Ravager

Registriert seit: 7. Jan 2006
19 Beiträge
 
#3

Re: Facharbeit: array abspeichern

  Alt 15. Jan 2006, 15:26
hm, mal testen...

und wie lade ich das ganze ding wieder in den Array?
  Mit Zitat antworten Zitat
Benutzerbild von Rastaman
Rastaman

Registriert seit: 6. Jan 2005
Ort: Lübbecke
575 Beiträge
 
Turbo C++
 
#4

Re: Facharbeit: array abspeichern

  Alt 15. Jan 2006, 15:30
Zitat von brechi:
Delphi-Quellcode:
var data_src_light : Array[0..150,0..150] of Integer;
var f: file of byte;
begin
  BlockWrite(f,data_src_light,
    SizeOf(data_src_light[0])*length(data_src_light));
sollte nicht sowas in der Art gehen? (jetz nicht wirklich viel drüber nachgedacht)

Zitat von Ravager:
hm, mal testen...

und wie lade ich das ganze ding wieder in den Array?
Typisierte Dateien wären empfehlenswerter...
Chuck Norris has counted to infinity ... twice!
  Mit Zitat antworten Zitat
Kinimod8

Registriert seit: 9. Jan 2004
Ort: Barsbüttel
317 Beiträge
 
Delphi 6 Personal
 
#5

Re: Facharbeit: array abspeichern

  Alt 15. Jan 2006, 16:04
Schau dir mal das hier an.
Dominik Peters
  Mit Zitat antworten Zitat
Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.043 Beiträge
 
Delphi XE2 Professional
 
#6

Re: Facharbeit: array abspeichern

  Alt 15. Jan 2006, 19:29
Hier hast Du was zum probieren


Delphi-Quellcode:
const dsn='Hugo.dat';
var data_src_light : Array[0..150,0..150] of Integer; //Sensorwerte
    data_src_set : Array[0..150,0..150] of boolean; //Wert bekannt

PROCEDURE TMain.Test;
var f:file; i,j,count:integer;
begin
   // Nur zum Test ob das so funktioniert
   FillChar(data_src_light,SizeOf(data_src_light),1);
   FillChar(data_src_set,SizeOf(data_src_set),1);

   // Schreiben
   AssignFile(f,dsn);
   Rewrite(f,1);
   BlockWrite(f,data_src_light,SizeOf(data_src_light),count);
   if count<>SizeOf(data_src_light) then begin
       // Fehlerbehandlung
   end;
   BlockWrite(f,data_src_set,SizeOf(data_src_set),count);
   if count<>SizeOf(data_src_set) then begin
       // Fehlerbehandlung
   end;
   CloseFile(f);

   // Lesen
   AssignFile(f,dsn);
   Reset(f,1);
   BlockRead(f,data_src_light,SizeOf(data_src_light),count);
   if count<>SizeOf(data_src_light) then begin
       // Fehlerbehandlung
   end;
   BlockRead(f,data_src_set,SizeOf(data_src_set),count);
   if count<>SizeOf(data_src_set) then begin
       // Fehlerbehandlung
   end;
   CloseFile(f);

   // Kontrolle ob schreiben/lesen funktionierte
   for i:=0 to 150 do
      for j:=0 to 150 do begin
         if data_src_light[i,j]<>$01010101 then begin
            ShowMessage('Fehler : data_src_light '+IntToStr(i)+', '+IntToStr(j));
            exit;
         end;
         if not data_src_set[i,j] then begin
            ShowMessage('Fehler : data_src_set '+IntToStr(i)+', '+IntToStr(j));
            exit;
         end;
      end;

   ShowMessage('Korrekt geschrieben und gelesen.');
end;
Gruß, Klaus
  Mit Zitat antworten Zitat
Ravager

Registriert seit: 7. Jan 2006
19 Beiträge
 
#7

Re: Facharbeit: array abspeichern

  Alt 18. Jan 2006, 15:01
Danke - das funktioniert prima.

Wenn ich den csv-Import/Export realisieren will, muss ich die Elemente mit ';' trennen.

Gibts da etwas ähnlich einfaches, um die Daten in eine csv-Datei zu schreiben?
  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 02:04 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