我有以下方法/步驟如何創建和打開文件
Private Sub CreateFile(ByVal filename As String, ByVal directory As String, ByVal extension As String)
Dim file2create = directory & filename & extension
Console.WriteLine(file2create)
If (Not File.Exists(file2create)) Then
File.Create(file2create)
Else
File.Open(file2create, FileMode.Open)
End If
console.ReadLine()
End Sub
此代碼成功地創建了一個文件,但無法打開它,只是說,我查過其他的答案類似的文件問題,但說答案還沒有解決我的問題,我在這裏做錯了什麼。謝謝
================================ UPDATE ============ ========================
謝謝你們的答案,但文件沒有打開。只是爲了澄清,當我說開放時,我的意思是同樣的行爲是物理上去到文件並點擊它。
如果我是從這個question
Private Function ShellExecute(ByVal File As String) As Boolean
Dim myProcess As New Process
myProcess.StartInfo.FileName = File
myProcess.StartInfo.UseShellExecute = True
myProcess.StartInfo.RedirectStandardOutput = False
myProcess.Start()
myProcess.Dispose()
End Function
該文件將成功地打開使用此代碼,但如果我是用file.open()的文件打不開,所以在本質上,我m尋找創建,然後以上述代碼相同的方式打開一個文件
難道你不想只是將'File.Open'移到if語句之外嗎? – PeterJ
或用'File.Open(file2create,FileMode.OpenOrCreate)'替換整個if語句。 –
'File.Create()'和'File.Open()'都返回一個'FileStream',它將鎖定文件被其他代碼/進程訪問。這是你想要的還是你打算用這個代碼實際讀取/寫入它?否則,你應該處理流:'File.Open(file2create,FileMode.OpenOrCreate).Dispose()'。 –