アスキーファイルを読みたいので、次のようにしたのですが読めません・・
Serialize(CArchive& ar)ですどこか間違ってますかね・・?
CFile* fp = ar.GetFile();
int i;
double *tmp;
tmp = CCC;
for ( i=0; i<IMAGEDATA_SIZE; i++, tmp++)
{
ar.ReadString( tmp, sizeof( double ) );
}
CCCはdouble型でデータを格納する場所です
IMAGEDATA_SIZEは256*256です
CCCがdouble型でデータを格納する場所なら、tmpは何をするものですか?
もっとタイトルのつけ方を考えようぜ!
ごく少数に駄目なタイトルもあるけど、ほとんどが内容がわかるタイトルを付けてるでしょ
う。
ぜひ、この問題の出所を知りたい。
そして、マッサラな問題文章を見てみたい。
想像するに、きっとこうにちがいない。v(^_^;
int i;
for(i=0;i<IMAGEDATA_SIZE;++i) ar>>CCC[i];
なぜかtmpにおきかえないとデータ-が反映されないんですよ
そのままCCCのままだとうまくいきませんでした。一応バイナリ-ファイルは成功したので。
char型でも試したのですがうまくいきませんでした
'読めません'を説明してください。
- コンパイルできなかった
- リンクできなかった
- 実行したらぶっ飛んだ
- 予想外の結果(そのときの入力/期待値/実測値)
こーゆーことがきちんと報告できないと無駄なやり取りを
繰り返した挙句、いいかげんな答えしかもらえません。
# なんだこの 'う・・' って? 答える気も失せる
バイナリ-ファイルでは思ったとうりのデータを取得できたのですが
アスキーだと読めるのですが予想外の結果となりました。
だーかーらー
- 予想外の結果(そのときの入力/期待値/実測値)
^^^^^^^^^^^^^^^^^^^^^^^^^^
ReadStringにdoubleのポインタ渡したら
コンパイルエラーになりそうだけど・・・
アスキーで書いたってことはファイルにあるのは文字列だわね。
それを double領域に 4文字分読み込んだのかな。
...意味のある結果が得られるとは思えないが。
ひょっとして文字列 1234 をこうやって読み込んだら
数値 1234 が得られるとでも思ってらっしゃる????
データの中身は9.352675144624524e+001、こんな感じのが256*256あります
っかしぃなぁ、なぜ通じないんだろ...?
- 予想外の結果(そのときの入力/期待値/実測値)
^^^^^^^^^^^^^^^^^^^^^^^^^^
および
ひょっとして文字列 1234 をこうやって読み込んだら
数値 1234 が得られるとでも思ってらっしゃる????
そもそもデータは 文字列で9.352675144624524e+001なんでしょ?
20文字以上あるんでしょ?
ar.ReadString( tmp, sizeof( double ) );
^^^^^^^^^^^^^^^^<---- ぜんぜん足らんやないの!
+001とかまで読んでほしのですよ?そういう型ってあるのですか?
「文字列型」というのを設けてそこに読み込んでみてください。
質問の前に、まず答えてください。
- '数字' と '数値' の違いがわかりますか?
- '数字' と '数値' をゴチャマゼに扱っていませんか?
- '数字' から '数値' への変換方法はご存知ですか?
ファイルにあるのは'数字'ですよね?
あなたが欲しいのは'数値'ですよね?
どうやってファイルに書きましたか? その逆をやればいいんですけど。