データ – 固定ページ 4 – プログラミング – Home

通知
すべてクリア

データ

固定ページ 4 / 6

かーご
 かーご
(@かーご)
ゲスト
結合: 22年前
投稿: 28
Topic starter  

// TODO: この位置に読み込み用のコードを追加してください。
CFile* fp = ar.GetFile();
filePath = fp->GetFilePath();
FileLength = fp -> GetLength();
c_image-> pImage = new unsigned short[IMAGEDATA_SIZE];
FileLength = ar.Read(c_image-> pImage, FileLength);
}

今、こうなってるんですが、もしアスキーファイルを読むならどう変えていいんですか?


返信引用
...
 ...
(@...)
ゲスト
結合: 22年前
投稿: 113
 

CString str;
ar.ReadString( str );


返信引用
...
 ...
(@...)
ゲスト
結合: 22年前
投稿: 113
 

っていうか実行時に落ちる件はどうなった?


返信引用
へたれ
 へたれ
(@へたれ)
ゲスト
結合: 23年前
投稿: 32
 

>デフォルトオープンモードってなに見ればわかる、変更するにはどこを

>いじればいい?

MSDN CArchive の説明より

>CArchive オブジェクトを構築し、入力用か出力用かを指定します。

>アーカイブを構築した後での指定変更はできません

となっていますので、Serialize 関数内ではできないですね。

また

>ファイルのオープン
モードとアーカイブの入出力状態が一致しているかどうかを確認する必要があります。

>アーカイブをクローズする前にファイルの状態が変化するような操作を CFile
に対して行ってはいけません。

>このような操作をするとアーカイブの質を損ないます

ともなっていますので、CArchive に結び付けられている CFile
のモードを変えるのもしてはならないでしょう。

CArchive::Read、ReadString、Write、WriteString がありますので、

バイナリ/テキストの切り替えも必要ないでしょう。

それ以前に、自分でモードを指定したりする場合は Serialize
関数なんか使わないですよね?(^^;


返信引用
へたれ
 へたれ
(@へたれ)
ゲスト
結合: 23年前
投稿: 32
 

すいません、なんかブラウザの調子がおかしいみたいで、改行が余計に入ってしまうみた
いです。


返信引用
PAI
 PAI
(@PAI)
ゲスト
結合: 23年前
投稿: 359
 

シリアライズはどっちかっていうとoperator<<で
がんがん流していく用途のためにできてる気がする。

だから、ファイル自体にはアクセスしなくていいようになってるんだろうな・・・

とか、昔納得したような記憶が。


返信引用
かーご
 かーご
(@かーご)
ゲスト
結合: 22年前
投稿: 28
Topic starter  

結局、変えなくてもアスキーも読めるんだすか?


返信引用
...
 ...
(@...)
ゲスト
結合: 22年前
投稿: 113
 

やってみてからいえ。


返信引用
かーご
 かーご
(@かーご)
ゲスト
結合: 22年前
投稿: 28
Topic starter  

読めないなりよ・・


返信引用
...
 ...
(@...)
ゲスト
結合: 22年前
投稿: 113
 

AfxMessageBox(読み込むぞ);
CString str;

if( ar.ReadString( str ) ){
AfxMessageBox(読めたぞ);
AfxMessageBox( str );
}else{
AfxMessageBox(読めねぇYO!);
}


返信引用
はお
 はお
(@はお)
ゲスト
結合: 22年前
投稿: 21
 

ファイルフォーマットはどうなったんだ?


返信引用
---
 ---
(@---)
ゲスト
結合: 22年前
投稿: 1
 

ReadStringした後にatoiしたらどうなる?


返信引用
へたれ
 へたれ
(@へたれ)
ゲスト
結合: 23年前
投稿: 32
 

そもそもアスキーコードを unsigned short 型で読み込むのはおかしいですね。

アスキーコードって文字列ですよね?


返信引用
かーご
 かーご
(@かーご)
ゲスト
結合: 22年前
投稿: 28
Topic starter  

えーと、とりあえず256×256のマットに数字を1から256までいれたい


返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

反応早いのも良いんだけど、チャットやっているわけではないので、最初からこのスレッド
読み直して、もう少し考えまとめてみてはどうでしょうか


返信引用
固定ページ 4 / 6

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました