从之前调用另一个子字符串中的字符串

时间:2015-08-10 06:41:57

标签: vb.net string path

我有一个名为student.getPassword();的子,它有一个名为 tempstr 的字符串。我需要在另一个名为ReadingText的Sub中调用tempstr 两个Subs属于同一类.. 代码如下:

SaveToolStripMenuItem

以上Sub在程序启动时运行,并用{strong> tempstr 替换Private Sub ReadingText(sender As Object, e As EventArgs) Handles Me.Load Dim arguments As String = Command() If arguments = String.Empty Then RichTextBox1.Text += vbCrLf & vbCrLf & vbCrLf Else Dim tempstr As String = arguments.Replace("""", "") Me.Text = tempstr & " - Text" Dim SR As New System.IO.StreamReader(tempstr) RichTextBox1.Text = SR.ReadToEnd Try SR.Close() Catch ex As Exception RichTextBox1.Text += ex.ToString End Try End If End Sub ,这是我在.exe程序中删除的.txt文件的路径,以便读取它的背景..

RichTextBox1.text

当用户点击Save这是ToolStrip中的一个项目时,此Sub运行。此Sub检查tempstr是否存在。如果它存在,则将 Private Sub SaveToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SaveToolStripMenuItem.Click Dim file As StreamWriter If My.Computer.FileSystem.FileExists(filePath) Then file = My.Computer.FileSystem.OpenTextFileWriter(filePath, True) file.WriteLine(RichTextBox1.Text) ElseIf (SaveFileDialog1.ShowDialog() = DialogResult.OK) file = My.Computer.FileSystem.OpenTextFileWriter(SaveFileDialog1.FileName, True) file.WriteLine(RichTextBox1.Text) file.Close() End If End Sub 保存在tempstr路径中..但它不会' t识别tempstr,因为它位于另一个Sub .. 我该怎么办?

2 个答案:

答案 0 :(得分:0)

将tempstr标记为共享的全局资源。

class Test{
...
Shared tempstr as String=String.Empty
...
}

希望这有帮助。

答案 1 :(得分:0)

您必须仔细阅读this thread by MSDN,这是关于变量和方法的范围。在你的情况下,这两个方法都属于同一个类,所以你需要定义(声明)具有全局范围的tempstr变量到类。如果你不想访问该类的值,那么No需要让它共享,因为共享变量具有应用范围。

Public Class your ClassName
Dim tempstr As String '<- Global declaration
Private Sub ReadingText(sender As Object, e As EventArgs) Handles Me.Load
' Your code 
End Sub
 Private Sub SaveToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles SaveToolStripMenuItem.Click
'Your code
End Sub
End Class