掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ファイルから配列データを動的配列への一括読み込み (ID:151251)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> 4バイト実数の場合 質問の表題と内容からするとここまでの答えになるのですが 実際は違う型だったり構造が異なるのでしょうか? サンプルでは全ての要素がWord型であることを前提に作ったのでPWordArrayで一気に読み込み後で処理しました しかし途中に他の型が挟まるような場合は厳しいですね そういう場合はPByteArrayで読み込んで w := ptr2^; inc(ptr2); data2[i,j,k] := w or (ptr2^ shl 8); inc(ptr2); のような感じにするかな > GetMem(ptr2,読み出すマトリックスのサイズ)で一括で読み出し 読み込む回数が増えるとその分処理は時間がかかります 一度に読み込むとメモリの問題が出てくるかもしれませんが 読み込む回数は出来るだけ減らしましょう メモリ間同士の演算であれば演算速度の問題だけで あとはアルゴリズムを工夫して高速化するしかありません そういえば思い出したけど TFileStream の代わりに TBufferedFileStream使えばいいなじゃない? どの処理に時間がかかっているのかは QueryPerformanceFrequency を使って各処理をミリ秒単位で計測しましょう ※Delphiデバッガに標準で欲しい機能ですが
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.