试图从外部文件中读取函数

时间:2013-05-17 00:58:30

标签: vb.net

嘿伙计们我正在尝试通过添加外部类来清理我的表单文件,但我遇到了一个问题。它说我没有返回值,我将得到一个null异常。

这是功能:

    Public Function writeData()
    Dim writeFile As StreamWriter = File.CreateText("C:\Users\Nick\documents\visual studio 2010\Projects\LoginFixed\Accounts\" + frmLogin.txtCUser.Text)
    writeFile.WriteLine("User: " + frmLogin.txtCUser.Text) ' user
    writeFile.WriteLine("Pass: " + frmLogin.txtCPass.Text) ' pass
    writeFile.WriteLine("E-mail: " + frmLogin.txtEmail.Text) ' e-mail
    writeFile.WriteLine("Securite Question 1: " + frmLogin.ComboBox1.Text)
    writeFile.WriteLine("-------------------")
    writeFile.Close()
End Function

当我所做的只是写数据时,我怎么能在这里返回任何值?

编辑:

按钮被阻止时调用此方法:

Dim userData As WriteUserData
    userData.writeData()

但它表示在为userData分配值之前正在使用它。

2 个答案:

答案 0 :(得分:0)

你不应该不退货吗?使用Sub代替Function

Public Sub WriteData()
    (...)
End Sub

由于编辑而修改

WriteData在哪里宣布?它在自己的Form中还是在另一个类中?

如果此方法采用您自己的形式处理按钮单击,则只应在事件处理程序Sub中写入:

Private Sub button1_Click(sender as Object, e as EventArgs) Handles button1.Click
    Me.writeData()
End Sub

否则@ Mike的答案应该可以解决您的问题。

答案 1 :(得分:0)

将您的主叫代码更改为:

Dim userData As New WriteUserData
userData.writeData()

我猜WriteUserData是一个类,并且在使用之前你没有实例化表单。 New关键字将创建一个实例。