AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Readbuffer in mehrdimensionales Array
Thema durchsuchen
Ansicht
Themen-Optionen

Readbuffer in mehrdimensionales Array

Ein Thema von CPO · begonnen am 14. Feb 2007 · letzter Beitrag vom 14. Feb 2007
Antwort Antwort
CPO

Registriert seit: 14. Feb 2007
11 Beiträge
 
Delphi 7 Personal
 
#1

Readbuffer in mehrdimensionales Array

  Alt 14. Feb 2007, 13:34
Hallo. Ich habe folgendes problem:
Ich lese 20 Bytes aus einem Filestream in ein 2dimensionales Array ein.

Wie kann ich nun beeinflussen, dass die Bytes horizontal oder vertikal (grafisch vorgestellt)
eingelesen werden.

Bei meinen versuchen klappt nur ein vertikales Einlesen (also in eine Spalte);

Bei diesem Versuch in Zeilen einzulesen kommt nur Müll heraus:

Delphi-Quellcode:
var dummyy:integer;
    Incoming:TFileStream;
    cbytes:longint;
begin

Incoming:=TFilestream.Create(Th_PfadDaten,fmOpenRead);

for dummyy:=0 to 19 do //Zeilen abarbeiten
    begin
    Incoming.Seek(XY2Pos(Th_x0,dummyy,Th_xmaxdat,Th_typedefdat),soFromBeginning); //Zu Position im Filestream gehen
    Incoming.Readbuffer(Th_DataArray[1,dummyy],20);
    end;
FreeAndNil(Incoming);
  Mit Zitat antworten Zitat
Benutzerbild von f.siebler
f.siebler

Registriert seit: 15. Jan 2007
Ort: Hamburg
170 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Readbuffer in mehrdimensionales Array

  Alt 14. Feb 2007, 13:55
hi,

irgendwie werde ich aus deiner fragestellung nicht ganz schlau? welche daten liegen wie vor? und welchen Sinn macht das horizontale oder vertikale einlesen der Daten?
Viele Grüße aus Hamburg
Fabian
sql-praxis.net: sql von der Theorie in die Praxis...
  Mit Zitat antworten Zitat
CPO

Registriert seit: 14. Feb 2007
11 Beiträge
 
Delphi 7 Personal
 
#3

Re: Readbuffer in mehrdimensionales Array

  Alt 14. Feb 2007, 14:08
Ich habe eine Binärdatei mit Grauwerten eines Bildes. Die Zeilen des Bildes liegen nacheinander
in der Datei.

Ich möchte nun diese Werte in ein zweidimensionales Array einlesen. Dabei soll die Urposition
jedes Pixels im Bild die gleiche im Array sein. (die Pixelinformation ist 2byte lang)

Lese ich nun z.B. die erste Zeile mit 20Bytes länge ein soll diese in der ersten Zeile meines
Arrays stehen. Dieses einlesen funktioniert bei mir leider nur Spaltenweise. Die erste Bildzeile
wird in die erste Arrayspalte eingelesen:

Incoming.Readbuffer(Th_DataArray[Th_Posy,0],20); //für Einlesen in eine Spalte

Für das Einlesen in Zeile müsste das gehen - eben leider nicht:
Incoming.Readbuffer(Th_DataArray[0,Th_Posy],20); //für Einlesen in eine Zeile

Das Array ist definiert:
TDataArray = array of array of word;
setlength(Th_DataAttay[9,9]);
  Mit Zitat antworten Zitat
DelphiKlaus

Registriert seit: 18. Okt 2006
100 Beiträge
 
Delphi 6 Professional
 
#4

Re: Readbuffer in mehrdimensionales Array

  Alt 14. Feb 2007, 14:26
Da wirst Du wohl erst in ein eindimensionales Array einlesen und dann die Werte umspeichern müssen.
  Mit Zitat antworten Zitat
CPO

Registriert seit: 14. Feb 2007
11 Beiträge
 
Delphi 7 Personal
 
#5

Re: Readbuffer in mehrdimensionales Array

  Alt 14. Feb 2007, 15:48
Vielen Dank für den Tip.
  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 23:18 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