AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Streams - negativen Wert mit Write schreiben???
Thema durchsuchen
Ansicht
Themen-Optionen

Streams - negativen Wert mit Write schreiben???

Ein Thema von FreewareFire · begonnen am 13. Aug 2004 · letzter Beitrag vom 15. Aug 2004
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    
FreewareFire

Registriert seit: 24. Sep 2003
51 Beiträge
 
Delphi 7 Professional
 
#11

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 15:43
Siehe das erste Posting - da is er, der Code!
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#12

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 15:49
und das einlesen?
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat
FreewareFire

Registriert seit: 24. Sep 2003
51 Beiträge
 
Delphi 7 Professional
 
#13

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 15:54
Wo sollte da ein problem auftauchen? Der Stream ist schon mit einer Datei gefüllt. Es funktioniert ja alles, nur das halt nicht. Der Stream ist also geladen und funktioniert! Nur wie kriege ich einen negativen Wert mit write geschrieben?
  Mit Zitat antworten Zitat
Benutzerbild von maximov
maximov

Registriert seit: 2. Okt 2003
Ort: Hamburg
548 Beiträge
 
Delphi 2005 Professional
 
#14

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 16:23
Zitat von FreewareFire:
Wo sollte da ein problem auftauchen? Der Stream ist schon mit einer Datei gefüllt. Es funktioniert ja alles, nur das halt nicht. Der Stream ist also geladen und funktioniert! Nur wie kriege ich einen negativen Wert mit write geschrieben?
HALLO! Dem stream ist es völlig egal ob negativ oder nicht. Entscheidend ist, ob die daten genauso wieder raus kommen, wie sie reingetan wurden. Also ist das interessanteste wie, wo, was wieder rauskommt und da wollen (zu recht) den code sehen. Kann ja auch sein das du dir das einfach mit nem hex-editor anschaust und die einzelnen bytes in einen integer umrechnest, was dann rein garnix zu sagen hätte.

Also zier dich nicht ...oder debugge selbst.
mâxîmôv.

{KDT}
  Mit Zitat antworten Zitat
FreewareFire

Registriert seit: 24. Sep 2003
51 Beiträge
 
Delphi 7 Professional
 
#15

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 16:51
Also Bitte: Ich lade die Daten so in den Stream:

Code:
MemoryStream.LoadFromFile(STV1.Path + '\' + FList.Items.Strings[FList.ItemIndex]);
aber wie gesagt, das sollte ja nix bringen oder - es handelt sich übrigens um einen TMemoryStream. Und wie die Daten geladen werden, nehme ich mal an, dürfte Hex-Dezimal sein, oder? Hilft das jetzt? Mehr mach ich halt nicht - einfach per LoadFile einlesen. Es handelt sich um eine binär Datei, also keine reine Textdatei!
  Mit Zitat antworten Zitat
Benutzerbild von MacGuyver
MacGuyver

Registriert seit: 9. Sep 2003
Ort: Wildeshausen
293 Beiträge
 
Turbo Delphi für Win32
 
#16

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 16:55
Merde!


Oben schreibst du den Small-Int mit zwei Byte in die Datei. Gut. Dann ließt du das Teil auf einmal ein. Wohin? In einen Truthan? Nein, da wird doch wohl ein Type zu Grunde liegen, oder? Der Quellcodeschnipsel ist so interessant wie Fahrstuhl fahren. Zeige bitte mehr.

Stefan
Englisch eine Weltsprache? Zu kompliziert und der nahe Osten würde Englisch als Pflichtweltsprache nicht akzeptieren.
IDO wäre genau das Richtige: http://forum.idolinguo.de/index.php oder www.idolinguo.de
  Mit Zitat antworten Zitat
FreewareFire

Registriert seit: 24. Sep 2003
51 Beiträge
 
Delphi 7 Professional
 
#17

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 17:02
Also nochmal:

1. Ich lade die Daten mit einem TMemoryStream!
2. Ich lade sie mit der LoadFile Funktion
3. Ich schreibe die Daten aus der SpinEdit in den Stream, vorher setzt ich per Position die Position des Zeigers in der Datei an die Stelle.

Und ich verwende keine Types oder sonstiges. Laden, schreiben mit write, mehr ist da nicht. Und mehr Code ist da einfach nicht, warum wollt ihr mehr Code? Da is eben keiner mehr
  Mit Zitat antworten Zitat
Benutzerbild von MacGuyver
MacGuyver

Registriert seit: 9. Sep 2003
Ort: Wildeshausen
293 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 17:04
Dann zeige doch mal die Stelle, wo du lädst und in den Spin schreibst.

Stefan
Englisch eine Weltsprache? Zu kompliziert und der nahe Osten würde Englisch als Pflichtweltsprache nicht akzeptieren.
IDO wäre genau das Richtige: http://forum.idolinguo.de/index.php oder www.idolinguo.de
  Mit Zitat antworten Zitat
FreewareFire

Registriert seit: 24. Sep 2003
51 Beiträge
 
Delphi 7 Professional
 
#19

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 17:12
Code:
procedure TForm1.FLISTClick(Sender: TObject);
var BuildValue: smallint;
begin
try
 
  //now open the file to check the type
  MemoryStream.LoadFromFile(STV1.Path + '\' + FList.Items.Strings[FList.ItemIndex]);

  MemoryStream.Position := $1A;
  BuildValue := BC.Value * 10;
  MemoryStream.Write(BuildValue, 2);

end;
So sieht's dann eben komplett aus!
  Mit Zitat antworten Zitat
Benutzerbild von MacGuyver
MacGuyver

Registriert seit: 9. Sep 2003
Ort: Wildeshausen
293 Beiträge
 
Turbo Delphi für Win32
 
#20

Re: Streams - negativen Wert mit Write schreiben???

  Alt 13. Aug 2004, 17:22
Irgendwie peilst du die Lage nicht.

Vom Spin in die Variable vom Typen SmallInt(2 Byte). Dabei wird automatisch eine Konvertierung vollzogen. Mit Sicherheit ist im Spin ein Integer (4 Byte)
Dann speicherst du die zwei Byte auf die Platte. Gut.
Dann lädst du deinen Stream. Gut. Wohin? Was macht BC.Value? Wieso * 10? Wieso Position $1A? Kannst du nicht erst einemal einen Typen deklarieren. Dann hast du auch keine Probleme beim Laden. Solltest du nur darauf achten, daß das "Packed Record" ist, sonst braucht ein Byte auch 2 Byte Speicher.

Zeige mal mehr vom Code.

Stefan
Englisch eine Weltsprache? Zu kompliziert und der nahe Osten würde Englisch als Pflichtweltsprache nicht akzeptieren.
IDO wäre genau das Richtige: http://forum.idolinguo.de/index.php oder www.idolinguo.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 5     12 34     Letzte »    


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 10:57 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