私のプログラムで、memoにデータを表示させているのですが、
15万行の前後でエラーが出ます。
表示量を減らして、149259行は表示できています。
私が使っているのはXE5だったと思います。
memoの容量も最初に比べると多くなりましたが、
その後は変わりませんか?
倍くら表示させる方法はありませんか??
よろしくお願いします。
生成したプログラムは32ビットですか?64ビットですか?
もし32ビットでしたら、64ビットで生成した場合、結果は同じになりますか?
すいません、無理かと思ったのでここを見ていませんでした。
64ビットだと思っていましたが、どこを見れば分かりますか??
> 64ビットだと思っていましたが、どこを見れば分かりますか??
【Delphi / C++Builder】Win32とWin64向けアプリケーション開発環境を設定する
https://qiita.com/kazaiso/items/adc60e88b4c7db334815
の
デスクトップ上でWindows 32bit/64bitアプリの開発環境を整える
https://qiita.com/kazaiso/items/adc60e88b4c7db334815#%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97%E4%B8%8A%E3%81%A7windows-32bit64bit%E3%82%A2%E3%83%97%E3%83%AA%E3%81%AE%E9%96%8B%E7%99%BA%E7%92%B0%E5%A2%83%E3%82%92%E6%95%B4%E3%81%88%E3%82%8B
あたりは、いかがでしょうか?
64ビットになっています。
エラーが起きる文字数を計算すると、
100文字*15万行=1500万文字となるのですが、
2の64乗=4の32乗=16の16乗=256の8乗=65536の4乗=429497296の2乗=1.8*10の18乗
まだ、十分余裕があると思うのですが??
何分、50年前に習ったことなので、間違いがあるかも??
そのパソコンのメモリは、どのくらい搭載していますか?
ちなみに、
> エラーが出ます。
エラーメッセージは、何と表示してますか?
なお、TMemoに20万行を格納するプログラムを
こちらで試したところ、Delphi XE, Delhi 12.2 いずれも問題なく格納・表示できました。
igyさん、ありがとうございました。
やってみます。
153802行の表示できました。
エラーは出ませんでした。
memoを使った自作の文書作成プログラムに、先ほどの15万文字を10回張り付けたのですが、
表示は問題なくできます。
エラーが出た理由を探してみます。
sortプログラムのせいかも。
実は、表示されないエラーは2回目だったのです。
1年ほど前か、理論的は数千万行を表示させようとしてエラーが出て、さすがにこれはダメかと封印していたのです。
今回はその表示の1000分の1くらいで、数をちょい減らして15万行弱で表示できたので質問させてもらったのです。
で、数千万行の表示をさせてエラーを探しましたが、「整数のオーバーフロー」でした。
そんなのを見ずにすぐ対応するが、年寄りの悪いとこですね。
ありがとうございました。
もうすぐあの世へ旅立ちますので、このような質問もそんなには多くないと思いますので、これからもよろしくお願いします。
以前、sortでもエラーが起こり、数が多いとだめなのかと思っていました。
今回の件で、581万行のデータが取れたので、sortしてみましたが、エラーは起こりませんでした。
倍の1162万行でもエラーなしです。
報告しておきます。
ツイート | ![]() |