掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
バイナリデータの切り抜き保存 (ID:44307)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>Stream.Read(Buffer, SizeOf(Buffer)); これは、16byteしか必要ないのに256byte読み込んでます。配列を埋める意図が無いのであれば、無駄です。 また、次のif文で使用しているReadLengthの値に、有用な値が代入されてません。 もし、CutLengthが可変なら、この1行を、次のように書き換えます。 if CutLength>SizeOf(Buffer) then CutLength := SizeOf(Buffer); ReadLength := Stream.Read(Buffer, CutLength); ちなみにこの方法では、Bufferサイズを超えるCutLengthが設定されたとき、 必要な長さのデータが取得できませんので、留意してください。 ファイルへの保存は、TMemoryStreamとSetPointerメソッドを使うと楽かも。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.