从字符串转换为类型'Integer'在以下代码中无效

时间:2013-11-01 06:42:18

标签: vb.net

Private Sub CreatFolder()  
    ' the line below gives error like Conversion from string "C:\inetpub\wwwroot\Createfolders" to type 'Integer' is not valid
    Dim directoryPath As String = Path.GetInvalidpathChars(Server.MapPath("..\Cre_Folders\File\") & txtFolderName.Text.Trim())

    If Not Directory.Exists(directoryPath) Then
        Directory.CreateDirectory(directoryPath)
        lblsuccess.Visible = True
        'lblmsg.Visible = False
        lblValidName.Visible = False
        lblDelete.Visible = False
        lblerr.Visible = False
    Else
        ClientScript.RegisterStartupScript(Me.[GetType](), "alert", "alert('Folder already existed.');", True)
        'lblmsg.Text = "Directory Already Exists..."
        lblValidName.Visible = False
        lblDelete.Visible = False
        lblsuccess.Visible = False
        lblerr.Visible = False
    End If

    Call Treeview()
End Sub

1 个答案:

答案 0 :(得分:1)

我猜你得到的是编译时错误,而不是运行时错误。

Path.GetInvalidPathChars()方法不验证路径。它不需要一个字符串,告诉你是好还是坏。相反,它返回一个已知在正在使用的OS中无效的字符数组。 MSDN Example

另请注意,返回的字符列表可能不完整 - 请参阅:Missing ? & *