cmn-clib(CommonLibraryForC)
C言語共通ライブラリ
|
ファイル操作共通関数群 ヘッダファイル [詳解]
#include "cmnclib/Common.h"
#include "cmnclib/CmnData.h"
#include "cmnclib/CmnString.h"
#include "cmnclib/CmnTime.h"
データ構造 | |
struct | _tag_CmnFileInfo |
マクロ定義 | |
#define | CMN_FILE_PATH_DELIMITER "/" |
#define | CMN_FILE_MAX_PATH (4096) |
#define | CMN_FILE_MAX_FILE_NAME (1024) |
型定義 | |
typedef struct _tag_CmnFileInfo | CmnFileInfo |
関数 | |
D_EXTERN CmnStringBuffer * | CmnFile_ReadAllText (const char *filePath, CmnStringBuffer *buf) |
ファイルをテキストデータとして全て読み込む [詳解] | |
D_EXTERN CmnDataBuffer * | CmnFile_ReadAll (const char *filePath, CmnDataBuffer *buf) |
ファイルを全て読み込む [詳解] | |
D_EXTERN int | CmnFile_WriteNew (const char *filePath, void *data, size_t len) |
データをファイルに書き込む。ファイルがなければ新規作成。ファイルがあれば上書き。 [詳解] | |
D_EXTERN int | CmnFile_WriteHead (const char *filePath, void *data, size_t len) |
データをファイルの先頭に追加する。ファイルがなければ新規作成。 [詳解] | |
D_EXTERN int | CmnFile_WriteTail (const char *filePath, void *data, size_t len) |
データをファイルの末尾に追加する。ファイルがなければ新規作成。 [詳解] | |
D_EXTERN int | CmnFile_Remove (const char *path) |
ファイルを削除する [詳解] | |
D_EXTERN CmnDataList * | CmnFile_List (const char *path, CmnDataList *list, CHARSET pathCharset) |
path直下のファイル/ディレクトリ一覧を取得する。 [詳解] | |
D_EXTERN char * | CmnFile_ToAbsolutePath (const char *path, char *buf, size_t buflen, CHARSET pathCharset) |
絶対パスを取得する [詳解] | |
D_EXTERN char * | CmnFile_GetCurrentDirectory (char *buf, size_t buflen) |
カレントディレクトリを取得する [詳解] | |
D_EXTERN int | CmnFile_Exists (const char *path) |
pathが実在するかチェックする [詳解] | |
D_EXTERN CmnFileInfo * | CmnFile_GetFileInfo (const char *path, CmnFileInfo *info) |
ファイル情報を取得する [詳解] | |
D_EXTERN char * | CmnFileInfo_ToString (const CmnFileInfo *info, char *buf) |
ファイル操作共通関数群 ヘッダファイル
ファイル操作共通関数群のヘッダファイル。
#define CMN_FILE_MAX_FILE_NAME (1024) |
最大ファイル名長
#define CMN_FILE_MAX_PATH (4096) |
最大パス長
#define CMN_FILE_PATH_DELIMITER "/" |
パス区切り文字
typedef struct _tag_CmnFileInfo CmnFileInfo |
ファイル情報構造体
D_EXTERN int CmnFile_Exists | ( | const char * | path | ) |
pathが実在するかチェックする
path | 実在するかチェックするパス。ディレクトリでもファイルでもOK |
D_EXTERN char* CmnFile_GetCurrentDirectory | ( | char * | buf, |
size_t | buflen | ||
) |
カレントディレクトリを取得する
buf | カレントディレクトリを格納するバッファ |
buflen | bufのサイズ |
D_EXTERN CmnFileInfo* CmnFile_GetFileInfo | ( | const char * | path, |
CmnFileInfo * | info | ||
) |
ファイル情報を取得する
path | ファイルパス |
info | 取得したファイル情報を格納する |
D_EXTERN CmnDataList* CmnFile_List | ( | const char * | path, |
CmnDataList * | list, | ||
CHARSET | pathCharset | ||
) |
path直下のファイル/ディレクトリ一覧を取得する。
path | ファイル/ディレクトリ一覧を取得するパス |
list | ファイル/ディレクトリ一覧を格納するリストオブジェクト。リストの要素にはCmnFileInfoをセットする。 |
D_EXTERN CmnDataBuffer* CmnFile_ReadAll | ( | const char * | filePath, |
CmnDataBuffer * | buf | ||
) |
ファイルを全て読み込む
ファイルから読み込んだデータをコピーして返却する。
返却したポインタは呼び出し側でCmnDataBuffer_Freeで解放すること。
filePath | ファイルパス |
buf | 読み込んだデータを格納するバッファ |
D_EXTERN CmnStringBuffer* CmnFile_ReadAllText | ( | const char * | filePath, |
CmnStringBuffer * | buf | ||
) |
ファイルをテキストデータとして全て読み込む
ファイルから読み込んだデータをbufにコピーして返却する。
ファイルはバイナリモードで読み込む。改行コードの変換が必要であれば呼び出し側で行うこと。
filePath | ファイルパス |
buf | 読み込んだデータを格納する文字列バッファ |
D_EXTERN int CmnFile_Remove | ( | const char * | path | ) |
ファイルを削除する
filePath | 削除するファイル |
D_EXTERN char* CmnFile_ToAbsolutePath | ( | const char * | path, |
char * | buf, | ||
size_t | buflen, | ||
CHARSET | pathCharset | ||
) |
絶対パスを取得する
path | 絶対パスに変換するパス |
buf | 取得した絶対パスを格納するバッファ |
buflen | bufの長さ |
pathCharset | パスの文字セット(ファイルシステムの文字セット)。Windowsの場合のみ必要。 |
D_EXTERN int CmnFile_WriteHead | ( | const char * | filePath, |
void * | data, | ||
size_t | len | ||
) |
データをファイルの先頭に追加する。ファイルがなければ新規作成。
filePath | ファイルパス |
data | 書き込むデータ |
D_EXTERN int CmnFile_WriteNew | ( | const char * | filePath, |
void * | data, | ||
size_t | len | ||
) |
データをファイルに書き込む。ファイルがなければ新規作成。ファイルがあれば上書き。
filePath | ファイルパス |
data | 書き込むデータ |
D_EXTERN int CmnFile_WriteTail | ( | const char * | filePath, |
void * | data, | ||
size_t | len | ||
) |
データをファイルの末尾に追加する。ファイルがなければ新規作成。
filePath | ファイルパス |
data | 書き込むデータ |