目次に戻る
一覧ページに戻る
CPFileCtrl::Open
2001/12/21 update.
ファイルを読み込み専用で開きます。

書式

  CP_BOOL Open(char *lpFName);

パラメータ


lpFName
開くファイル名です。
フォルダ名を「/」で区切ることにより、パスによるファイル指定を行うことができます (この操作は、Windows/Macintoshに限らず同じです)。
パス指定の開始位置は、現在のカレントフォルダになります。

例:
"tmp01.dat" ... "tmp01.dat"を開く
"user/tmp01.dat" ... "user"フォルダ内の"tmp01.dat"を開く
戻り値
ファイルのオープンに成功した場合は、CP_TRUEを返します。
指定のファイルが存在しない、ファイルにロックがかかっている、などの場合は処理に失敗し、CP_FALSEを返します。

解説


ファイルを読み込み専用で開きます。
ファイルを書き込み専用に開く場合は、Createを使用してください。
また、開かれたファイルは、ファイルの処理が終わったときにCloseにて閉じるようにしてください。





ファイル"user/tmp01.dat"をオープンし、読み込んだデータをバッファ[lpBuff]に格納します。

CPFileCtrl f;
char *lpBuff=NULL;
int len;

//ファイルを読み込み専用で開く
if(f.Open("user/tmp01.dat")){
    //ファイルポインタをファイルの最終位置に移動
    f.Seek(0,CP_FILE_END);

    //このときのファイルポインタがファイルサイズに相当する
    len=f.GetOffset();

    //メモリの確保
    lpBuff=(char *)malloc(len+4);
    if(lpBuff){
        //ファイルよりデータを読み込み
        f.Read(lpBuff,len);
    }

    //ファイルを閉じる
    f.Close();
}

この例では、
ファイル"user/tmp01.dat"を開き、ファイルサイズを「Seek」「GetOffset」により取得しています。
この後にメモリを確保し、「Read」により、ファイルデータをlpBuffに格納しています。


ビルド時に必要なファイル


ライブラリ :CPartsLib.lib (Macintoshの場合は、CPartsCW.a)
ヘッダ :CPFileCtrl.h


関連リンク


CPFileCtrlクラス
CPFileCtrl::Create
CPFileCtrl::Close