2

我是 Visual Basic 的新手,我正在尝试使用此代码创建一个文件

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim curboard As String = comboard.SelectedItem
    Dim curstd As String = comstd.SelectedItem
    Dim curdiv As String = comdiv.SelectedItem
    Dim curmed As String = commed.SelectedItem
    Dim filepath As String = "c:\program files\School Attandance Management System 1.0\data\" & curdiv & ".samsclass"

    Try
        File.Create(filepath)
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try


End Sub

这输出

路径中的非法字符

comdiv、comstd、commed 和 comboard 是组合框 请告诉我如何将变量连接到文件路径中?

4

1 回答 1

6

要连接字符串以形成有效的文件路径,您应该使用Path 类及其方法Path.Combine

Path.Combine("c:\program files\School Attandance Management System 1.0\data", 
             curdiv, ".samsclass")

请注意该方法如何接受字符串数组并将它们组合在一起以形成有效的文件路径,并在需要的地方插入正确的路径分隔符。

当然,变量curdiv 本身不应包含无效的文件名字符,因为您可以从方法GetInvalidFileNameChars获得这些字符

您可以尝试使用这样的代码删除无效字符,但正确的方法应该是不允许组合框中出现无效名称

Dim invalidFileChars() As Char = Path.GetInvalidFileNameChars()
for each c in invalidFileChars
    curdiv = curdiv.Replace(c.ToString(), "")
Next
于 2013-05-15T12:32:28.730 回答