Delphi・メソッド

【ファイル関連メソッド】
■FileExists
ファイル存在チェック
if FileExists(edtPath.Text) then //ファイルが存在すればTrue

■CopyFile
ファイルのコピー
CopyFile(PChar(sFromName), PChar(sToName), bExist)
 sFromName コピー元ファイル
 sToName コピー先ファイル
 bExist コピー先にファイル存在時の処理
 (true:異常終了しコピーしない、false:正常終了し上書きコピー

■DeleteFile
ファイルの削除
DeleteFile(const FileName: string)

■ChangeFileExt
ファイルの拡張子変更
単純に拡張子を変更するだけならこれが便利。
例)
sFilename := ‘abc.txt’;
sChgExt := ‘csv’;
sWk := ChangeFileExt(sFilename, sChgExt); →sWkの中身 ‘abc.csv’

■ExtractFileDir
FileName のドライブ部分とディレクトリ部分を返却
例)
sFile := ‘C:\dir\test.txt’;
sWk := ExtractFileDir(sFile); //sWk : ‘C:\dir\’

■ExtractFileDrive
ファイル名からドライブ部分を返却
例)
sFile := ‘C:\dir\test.txt’;
sWk := ExtractFileDrive(sFile); //sWk : ‘C:\’

■ExtractFilePath
ファイル名のパス部分を返却
例)
sFile := ‘C:\dir\test.txt’;
sWk := ExtractFilePath(sFile); //sWk : ‘C:\dir\’

■ExtractFileName
ファイル名の名前部分と拡張子部分を返却
(=フルパスのファイル名の、ファイル名部分だけを返す)
例)
sFile := ‘C:\dir\test.txt’;
sWk := ExtractFileName(sFile); //sWk : ‘test.txt’

■ExtractFileExt
ファイル名の拡張子部分を返します。
例)
sFile := ‘C:\dir\test.txt’;
sWk := ExtractFileExt(sFile); //sWk : ‘.stxt’

【フォルダ関連メソッド】
■DirectoryExists(Name: string): Boolean;
フォルダ存在チェック
存在すればtrue

■MkDir(S: string);
フォルダ作成
//フォルダが存在しなければ作成
if not DirectoryExists(sTmpDirName) then
MkDir(sTmpDirName);

■RmDir(S: string);
フォルダ削除
RmDir(sTmpDirName); //フォルダを削除
※必ず存在チェック(DirectoryExists)後に行う。

【Tips】
■ファイル名から拡張子を削除して間に文字列を入れ、別の拡張子に変換する
filename := ExtractFileName(copyFile);
filenameNoext := Copy(filename, 0, (Pos(‘.’, filename) – 1)); //拡張子除去
bkupFile := bkupDir + filenameNoext + ‘_’ + sDay + ‘.txt’;

■拡張子を除去
filenameNoext := Copy(FileNM, 0, (Pos(‘.’, filename) – 1)); //拡張子除去

■ファイル一括削除
procedure deleteXls;
var
srcRc: TSearchRec;
i: integer;
bFlg: boolean;
begin
//エクセルファイル存在チェック
if FindFirst(‘C:\dir\*.XLS’, faAnyFile, srcRc) = 0 then
begin
repeat
DeleteFile(‘C:\dir\’ + srcRc.Name);
i := FindNext(srcRc); //次を検索
until not i = 0
end;
end;