vb.net - una - system io directory createdirectory
¿Cómo creo una carpeta en VB si no existe? (12)
(importa System.IO)
if Not Directory.Exists(Path) then Directory.CreateDirectory(Path) end if
Me escribí una pequeña aplicación de descarga para poder tomar fácilmente un conjunto de archivos de mi servidor y ponerlos en una nueva PC con una instalación limpia de Windows, sin tener que entrar en la red. Lamentablemente, tengo problemas para crear la carpeta en la que quiero ponerlos y no estoy seguro de cómo hacerlo.
Quiero que mi programa descargue las aplicaciones para program files/any name here/
Básicamente, necesito una función que compruebe si existe una carpeta y, si no, la crea.
Como la pregunta no especificaba .NET, esto debería funcionar en VBScript o VB6.
Dim objFSO, strFolder
strFolder = "C:/Temp"
Set objFSO = CreateObject("Scripting.FileSystemObject")
If Not objFSO.FolderExists(strFolder) Then
objFSO.CreateFolder(strFolder)
End If
Debería intentar usar el File System Object o FSO. Hay muchos métodos que pertenecen a este objeto que comprueban si existen carpetas y también la creación de nuevas carpetas.
Directory.CreateDirectory () debería hacerlo. http://msdn.microsoft.com/en-us/library/system.io.directory.createdirectory(VS.71).aspx
Además, en Vista, probablemente no pueda escribir en C: directamente, a menos que lo ejecute como administrador, por lo que puede omitirlo y crear el directorio que desee en un subdirector de C: (lo que yo diría es una buena práctica para seguir de todos modos. Es increíble cuántas personas simplemente arrojan basura a C:
Espero que ayude.
En System.IO, hay una clase llamada Directory. Haz lo siguiente:
If Not Directory.Exists(path) Then
Directory.CreateDirectory(path)
End If
Asegurará que el directorio esté allí.
Pruebe esto: Directory.Exists(TheFolderName)
y Directory.CreateDirectory(TheFolderName)
(Puede necesitar: Imports System.IO
)
Pruebe la clase System.IO.DirectoryInfo .
El ejemplo de 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
Solo haz esto:
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
Decidí que la ruta de la carpeta era una Cadena (sPath), de modo que si la usa varias veces puede cambiarse fácilmente, pero también puede cambiarse a través del programa.
¡Espero eso ayude!
-fiesta2009
VB.NET? System.IO.Directory.Exists (ruta de cadena)
Veo cómo funcionaría esto, cuál sería el proceso para crear un cuadro de diálogo que permita al usuario nombrar la carpeta y ubicarla donde desee.
Aclamaciones
If Not Directory.Exists(somePath) then
Directory.CreateDirectory(somePath)
End If
If(Not System.IO.Directory.Exists(YourPath)) Then
System.IO.Directory.CreateDirectory(YourPath)
End If