ファイルのフルパスを取得する – プログラミング – Home

ファイルのフルパスを取得する
 
通知
すべてクリア

ファイルのフルパスを取得する

固定ページ 1 / 2

ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

ファイルのフルパスを取得するには


引用解決済
トピックタグ
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

ダイアログだと
CFileDialog myDLG( FALSE,NULL,*.*,
OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
すべてのファイル(*.*)|*.*||);

if( myDLG.DoModal()==IDOK ){
// ファイル名の取得
fileName = myDLG.GetPathName();
こんなんですけどSDIで基本はForm、ファイルの開き方は左上のファイルからやりたいとき
はどう変えればいいですかね。


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

どこのどのタイミングでフルパス情報が必要なのですか?


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

クラスウィザードの ID_FILE_XXXX のCOMMAND メッセージハンドラ内に
>CFileDialog myDLG( FALSE,NULL,*.*,
> OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
> すべてのファイル(*.*)|*.*||);

>if( myDLG.DoModal()==IDOK ){
> // ファイル名の取得
> fileName = myDLG.GetPathName();
このコードを追加するとできると思いますよ。

それか、ドキュメントクラスの Serialize 関数の CArchive オブジェクトを使って、
CFile* fp = ar.GetFile();
CString strPath = fp->GetFilePath();
でも取れます。


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

「左上のファイル」というのはたぶんメニューのファイルに属している「開く」を
指していると思いますが、それを選択された時に必要なのですか?
それとも、それを選択してファイルダイアログが表示される前に必要なのですか?
ファイルダイアログが表示されてファイルを選択した後に必要なのですか?
それとも、ドキュメントクラスのSerialize(CArchive& ar)で必要なのですか?


返信引用
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

ドキュメントクラスの Serialize 関数で行いたいですね。
ファイルダイアログはつけません。
なので左上のファイルボタンからファイルを得たいです。


返信引用
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

すいません、さらにファイルを開くプログラムはどうすればいいのですか?
普通にfopenでよろしいのですか?


返信引用
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

へたれさんどうもです


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

ファイルを開く場合は
ar >> (object);

または
ar.Read();
ar.ReadString();

でいいです。


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

ドキュメントクラスのシリアライズに入っている時点で
ファイルは開いてますが・・・。

もし、対象ファイルがテキストファイルならば
if (ar.IsStoring())
{
// TODO: この位置に保存用のコードを追加してください。
}
else
{
// TODO: この位置に読み込み用のコードを追加してください。
CString str;
ar >> str;
}
こうしてみてください。
1行目が読み込めるはずです。


返信引用
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

へたれさん、感謝です・・やってみます
大変すいませんが後で確認したいのでまとめて書いてくれるとありがたいです


返信引用
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

はおさん、たすかります^^


返信引用
ako
 ako
(@ako)
ゲスト
結合: 22年前
投稿: 14
Topic starter  

テキストじゃないときはどうなるのですか?


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

テキストでないときはそのファイルフォーマットにそったデータ型で読み込んでやればいいはず
です。
このあたりはきちんと勉強したほうがいいと思いますので自分でシリアライズとかCArchiveを
調査してみてください。
ファイル入出力の基本的なことがわかっていたら理解できると思います。


返信引用
アサノ
 アサノ
(@アサノ)
ゲスト
結合: 22年前
投稿: 9
 

CFileって具体的な意味って何なんですか?
調べてもわかりにくかったんで


返信引用
固定ページ 1 / 2

返信する

投稿者名

投稿者メールアドレス

タイトル *

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