VB.NET 创建文件夹
Public Class Newgongcheng
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim fsotest As New FileSystemObject
If fsotest.FileExists("C:\负屃\" & TextBox1.Text) = False Then
fsotest.CreateFolder("C:\负屃" & TextBox1.Text)
End If
MsgBox("创建成功")
End Sub
End Class
我希望在C盘的负屃的文件夹内再新建一个名字由TEXTBOX1提供的文件名。可为什么我输入后,为直接在C盘根目录下面创建一名字是负屃+TEXTbox1的文件名呢? 展开
用Directory.CreateDirectory即可创建文件夹:
' 建立目录
If Not Directory.Exists("C:\负屃\" & TextBox1.Text) Then '检查文件夹是否存在
Directory.CreateDirectory("C:\负屃\" & TextBox1.Text) '不存在,创建文件建夹
End If
你的例子是因为少了一个"\"引起的,正确的如下:
Dim fsotest As New FileSystemObject
If fsotest.FileExists("C:\负屃\" & TextBox1.Text) = False Then
fsotest.CreateFolder("C:\负屃\" & TextBox1.Text) '这里你少了一个\
End If
MsgBox("创建成功")
vb.net创建文件夹,首先判断需创建的文件夹目录下是否存在指定文件夹,如不存再进行创建
下面给出两种创建文件夹的方法
1:创建普通文件夹;2:创建文件夹赋予一些权限,例如创建的文件夹是否能删除,是否允许用户访问等
代码如下:
' 首先引入命名空间
Imports System.IO '提供用于创建、复制、删除、移动和打开文件的静态方法,并协助创建 FileStream 对象
Imports System.Security.AccessControl '供的编程元素用来控制对可保护对象的访问,并审核针对这些对象执行的与安全有关的操作
'将创建过程写入自定义函数,便于后期重复调用,使代码简洁
Function CreateFile(ByVal path As String, ByVal IsDirectorySecurity As Boolean) As String 'path代表你创建的文件夹所在的路径和文件夹名,IsDirectorySecurity代表是否创建一些比较特殊的文件夹
Try
If IsDirectorySecurity = True Then '创建特殊文件夹
Dim sec As New DirectorySecurity
Dim rule As FileSystemAccessRule = New FileSystemAccessRule("Administrator", FileSystemRights.Delete, AccessControlType.Allow) '创建文件夹规则 这条语句指的是 用Administrator账号创建能删除,能访问的文件夹
sec.AddAccessRule(rule) '将规则添加到需要创建的文件夹中
If Directory.Exists(path) = False Then '判断文件夹是否存在
Directory.CreateDirectory(path, sec)
Return "创建文件夹成功"
Else
Return "文件夹已经存在"
End If
Else '创建普通文件夹
If Directory.Exists(path) = False Then '判断文件夹是否存在
Directory.CreateDirectory(path)
Return "创建文件夹成功"
Else
Return "文件夹已经存在"
End If
End If
Catch ex As Exception
Return ex.Message '创建文件夹异常时返回异常原因
End Try
End Function
'调用示例
Dim CreateDirectoryResult As String = CreateFile("C:\abc", True)
Dim 文件夹 As String = InputBox("请输入文件夹的路径……") ‘返回一个你要创建文件夹的路径
Dim 文件夹信息 As DirectoryInfo ’创建一个文件夹信息对象
文件夹信息 = New DirectoryInfo(文件夹) ‘将文件夹信息对象按照你要创建的路径赋值
If 文件夹信息.Exists Then ’测试文件夹信息对象是否已经存在
MsgBox("文件夹已经存在。")
Else
文件夹信息.Create() ‘不存在则建立一个
MsgBox("文件夹已经建立。")
End If
Catch ex As Exception
MsgBox(ex.Message) ’返回错误信息,例如你没有权限或者驱动器未准备好
End Try
'vb.net2008
Imports System.IO
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim b_path As String
b_path = "d:\123"
If Directory.Exists(b_path) = True Then
MsgBox("已有 " & b_path & " 目录")
Else
Directory.CreateDirectory(b_path)
MsgBox("新创建 " & b_path & " 目录")
End If
End Sub
End Class
少了一个斜杠
加斜杠出现:
“System.IO.DirectoryNotFoundException”类型的未经处理的异常出现在 馨夜涟漪-负屃.exe 中。
其他信息: 异常来自 HRESULT:0x800A004C (CTL_E_PATHNOTFOUND)
负屃 这个文件夹也没有么?
如果没有要先 创建文件夹
然后再在其中创建文件