Ответ 1
If(Not System.IO.Directory.Exists(YourPath)) Then
System.IO.Directory.CreateDirectory(YourPath)
End If
Я написал себе небольшое загружающее приложение, чтобы я мог легко захватить набор файлов с моего сервера и поместить их на новый компьютер с чистой установкой Windows без фактического выхода в сеть. К сожалению, у меня возникают проблемы с созданием папки, в которую я хочу поместить их, и я не уверен, как это сделать.
Я хочу, чтобы моя программа загружала приложения в program files\any name here\
Так что в основном мне нужна функция, которая проверяет, существует ли папка, и если она ее не создает.
If(Not System.IO.Directory.Exists(YourPath)) Then
System.IO.Directory.CreateDirectory(YourPath)
End If
В System.IO существует класс под названием Directory. Выполните следующие действия:
If Not Directory.Exists(path) Then
Directory.CreateDirectory(path)
End If
Он будет гарантировать, что каталог существует.
Поскольку вопрос не указал .NET, это должно работать в VBScript или VB6.
Dim objFSO, strFolder
strFolder = "C:\Temp"
Set objFSO = CreateObject("Scripting.FileSystemObject")
If Not objFSO.FolderExists(strFolder) Then
objFSO.CreateFolder(strFolder)
End If
Попробуйте System.IO.DirectoryInfo класс.
Образец из MSDN:
Imports System
Imports System.IO
Public Class Test
Public Shared Sub Main()
' Specify the directories you want to manipulate.
Dim di As DirectoryInfo = New DirectoryInfo("c:\MyDir")
Try
' Determine whether the directory exists.
If di.Exists Then
' Indicate that it already exists.
Console.WriteLine("That path exists already.")
Return
End If
' Try to create the directory.
di.Create()
Console.WriteLine("The directory was created successfully.")
' Delete the directory.
di.Delete()
Console.WriteLine("The directory was deleted successfully.")
Catch e As Exception
Console.WriteLine("The process failed: {0}", e.ToString())
End Try
End Sub
End Class
Попробуйте следующее: Directory.Exists(TheFolderName)
и Directory.CreateDirectory(TheFolderName)
(Возможно, вам потребуется: Imports System.IO
)
VB.NET? System.IO.Directory.Exists(строковый путь)
Directory.CreateDirectory() должен это сделать. http://msdn.microsoft.com/en-us/library/system.io.directory.createdirectory(VS.71).aspx
Кроме того, в Vista вы, вероятно, не можете писать в C: напрямую, если вы не запускаете его как администратор, поэтому вы можете просто обойти это и создать каталог, который вы хотите, в поддире C: (который я ' d say - хорошая практика, которой нужно следовать в любом случае. - Невероятно, сколько людей просто сбрасывают дерьмо на C:
Надеюсь, что это поможет.
(импортирует System.IO)
if Not Directory.Exists(Path) then Directory.CreateDirectory(Path) end if
If Not Directory.Exists(somePath) then
Directory.CreateDirectory(somePath)
End If
Вам следует попытаться использовать объект файловой системы или FSO. Существует много методов, относящихся к этому объекту, которые проверяют наличие папок, а также создание новых папок.
Я вижу, как это будет работать, каким будет процесс создания диалогового окна, которое позволяет пользователю указать папку и разместить ее там, где вы хотите.
Приветствия
Просто сделайте следующее:
Dim sPath As String = "Folder path here"
If (My.Computer.FileSystem.DirectoryExists(sPath) = False) Then
My.Computer.FileSystem.CreateDirectory(sPath + "/<Folder name>")
Else
'Something else happens, because the folder exists
End If
Я объявил путь к папке как String (sPath), поэтому, если вы используете его несколько раз, его можно легко изменить, но также его можно изменить с помощью самой программы.
Надеюсь, что это поможет!
-nfell2009