Module
Contents
Index 🔎︎

# MkDir Statement

データ記録媒体上に新規ディレクトリを作成します。

## 構文:

    MkDir Text As String

## パラメーター:

Text: 作成するディレクトリの名前およびパスを指定する文字列表式。またURL 指定を用いることもできます。

有効なパスが指定されなかった場合、現在のディレクトリの中に新規ディレクトリが作成されます。

## Error codes:

5 無効なプロシージャー呼び出しです

76 パスが見つかりません

## 例:

    Sub ExampleFileIO

    ' ファイルを整理するための機能の例

    Const sFile1 As String = "file://c|/autoexec.bat"

    Const sDir1 As String = "file://c|/Temp"

    Const sSubDir1 as String ="Test"

    Const sFile2 as String = "Copied.tmp"

    Const sFile3 as String = "Renamed.tmp"

    Dim sFile As String

        sFile = sDir1 + "/" + sSubDir1

        ChDir( sDir1 )

        If Dir(sSubDir1,16)="" then ' ディレクトリが存在するかの確認

            MkDir sSubDir1

            MsgBox sFile,0,"Create directory"

        End If

        sFile = sFile + "/" + sFile2

        FileCopy sFile1 , sFile

        MsgBox fSysURL(CurDir()),0,"Current directory"

        MsgBox sFile & Chr(13) & FileDateTime( sFile ),0,"Creation time"

        MsgBox  sFile & Chr(13)& FileLen( sFile ),0,"ファイルサイズ"

        MsgBox sFile & Chr(13)& GetAttr( sFile ),0,"ファイル属性"

        Name sFile As sDir1 + "/" + sSubDir1 + "/" + sFile3

        ' 同一ディレクトリ内で名前を変更

        sFile = sDir1 + "/" + sSubDir1 + "/" + sFile3

        SetAttr( sFile, 0 ) 'すべての属性の削除

        MsgBox sFile & Chr(13) & GetAttr( sFile ),0,"New file attributes"

        Kill sFile

        RmDir sDir1 + "/" + sSubDir1

    End Sub

    ' システムパスを URL に変換

    Function fSysURL( fSysFp As String ) As String

    Dim iPos As String

        iPos = 1

        iPos = Instr(iPos,fSysFp, getPathSeparator())

        Do While iPos > 0

            Mid( fSysFp, iPos , 1,"/")

            iPos = Instr(iPos+1,fSysFp, getPathSeparator())

        Loop

        ' DOS のコロン処理

        iPos = Instr(1,fSysFp,":")

        If iPos > 0 Then Mid( fSysFp, iPos , 1,"|")

        fSysURL = "file://" & fSysFp

    End Function