Contents
Index 🔎︎

# MkDir Statement

Создаёт новый каталог на носителе данных.

### Syntax:

    MkDir path

### Parameters:

path: Any string expression that specifies the name and path of the directory to be created. You can also use URL notation.

Если не указан полный путь, то директория будет создана в текущей директории.

### Error codes:

5 Неправильный вызов процедуры

76 Путь не найден

### Example:

    Sub ExampleFileIO
    ' Пример для функций организации файлов
    Const sFile1 As String = "file://c|/autoexec.bat"
    Const sDir1 As String = "file://c|/Temp"
    Const sSubDir1 as String ="Тест"
    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,"Создание каталога"
        End If
        sFile = sFile + "/" + sFile2
        FileCopy sFile1 , sFile
        MsgBox fSysURL(CurDir()),0,"Текущий каталог"
        MsgBox sFile & Chr(13) & FileDateTime( sFile ),0,"Время создания"
        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,"Новые атрибуты файла"
        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