CreateFolders

FileSystemObjectオブジェクトのCreateFolderで親フォルダが存在しないと作成できない点を改良した関数です。

この関数を使えば親フォルダが存在しなくてもエラーを出さずにフォルダを生成することができます。

パスは絶対パスでも相対パスでも大丈夫です。

構文
CreateFolders( folderspec )
引数
folderspec
作成するフォルダのパス
戻値

プログラム

//////////////////////////////////////////////////
// 【引数】
//   folderspec : 作成するフォルダのパス 
// 【戻値】
// 
//////////////////////////////////////////////////
PROCEDURE CreateFolders(folderspec)
	DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
	folderspec = FSO.GetAbsolutePathName(folderspec)
	IF !FSO.DriveExists(FSO.GetDriveName(folderspec)) THEN EXIT
	DIM parentPath = FSO.GetParentFolderName(folderspec)
	IFB !FSO.FolderExists(parentPath) THEN
		CreateFolders(parentPath)
	ENDIF
	IF !FSO.FolderExists(folderspec) THEN FSO.CreateFolder(folderspec)
FEND