我想在用户的%appdata%文件夹中创建一个文件夹,它确实创建了,但它无法在文件夹中写入文件,它说"访问被拒绝",我用Google搜索了它,但没有任何对我有用。
Dim SpecialAppData As String = GetFolderPath(Environment.SpecialFolder.ApplicationData)
Dim CLOUDSAVEDFILESCFG As String = SpecialAppData & "\da_dev\clientsettings\cloud\"
If System.IO.Directory.Exists(SpecialAppData & "\da_dev\clientsettings\cloud\") Then
Else
System.IO.Directory.CreateDirectory(SpecialAppData & "\da_dev\clientsettings\cloud\")
End If
timeout(0.5)
Dim objWriterCSF As New System.IO.StreamWriter(CLOUDSAVEDFILESCFG)
TextBox1.Text = My.Settings.username
TextBox2.Text = My.Settings.password
If My.Computer.FileSystem.FileExists(SpecialAppData & "\da_dev\clientsettings\cloud\" & "files.cfg") Then
Else
objWriterCSF.Write("0")
objWriterCSF.Close()
End If
错误是:
编辑:
我注意到图片说它无法找到路径,我修复了这个问题,但现在我遇到了问题:
答案 0 :(得分:3)
您无法“打开文件”实际上是一个目录。
Dim CLOUDSAVEDFILESCFG As String = SpecialAppData & "\da_dev\clientsettings\cloud\"
CLOUDSAVEDFILESCFG
指向目录。
答案 1 :(得分:0)
此处的错误不是访问被拒绝,而是该目录不存在。在尝试在其中创建文件之前,您可以使用Directory.CreateDirectory(Path.GetDirectoryName(CLOUDSAVEFILESCFG))
来确保该目录存在。
答案 2 :(得分:0)
解决:
忘记在CLOUDSAVEDFILESCFG后面添加一个文件...
像这样:
Dim objWriterCSF As New System.IO.StreamWriter(CLOUDSAVEDFILESCFG & "\files.cfg")