从文本文件打印到标签获取数据

时间:2013-04-12 02:31:40

标签: vb.net visual-studio-2010

为了保持这个简短,我正在制作一个简单的游戏,与世界上任何对它感兴趣的人一起玩,并且因为我正在创造所述游戏,我决定在一个简单的游戏发射器上工作一个ping网站一个版本,检查该版本与已安装游戏的存储文本文件,看看它是否有版本差异。如果它的版本不同,启动器会下载游戏。如果此人尚未安装游戏,则会为其下载游戏。

现在我的问题为什么我在这里发帖,我试图从AppData目录中获取已经存储在计算机上的文本文件,以便由启动器读取并将其用作与网站上版本的比较。这就是我在发布时所拥有的:

发布时:

Private Sub MainForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim wc As New Net.WebClient

Text = wc.DownloadString("https://dl.dropboxusercontent.com/u/47132467/version.txt")

If My.Computer.FileSystem.FileExists("C:\Program Files\SC\SC.exe") Then
    StartBtn.Enabled = True
    StartBtn.Visible = True
Else
    StartBtn.Enabled = False
    StartBtn.Visible = False
End If

If My.Computer.FileSystem.FileExists("C:\Program Files\SC\Readme.txt") Then
    ReadMeBtn.Visible = True
Else
    ReadMeBtn.Visible = False
End If
End Sub

总之,我试图找出如何从Environ("AppData") & "\SC\version.txt"下的AppData中存储的计算机本身创建一个文本文件。试图找出如何让程序读取本地存储的文本文件并将其放入作为变量,程序将其与在线文本文件进行比较。提前致谢!对不起,如果我混淆了任何人,我的大脑处于derp模式,试图解决这个问题一段时间了。

2 个答案:

答案 0 :(得分:1)

以下是2个功能读取&写:

Public Function GetFileContents(ByVal FullPath As String, _
   Optional ByRef ErrInfo As String = "") As String

    Dim strContents As String
    Dim objReader As StreamReader
    Try

        objReader = New StreamReader(FullPath)
        strContents = objReader.ReadToEnd()
        objReader.Close()
        Return strContents
    Catch Ex As Exception
        ErrInfo = Ex.Message
    End Try
End Function

Public Function SaveTextToFile(ByVal strData As String, _
 ByVal FullPath As String, _
   Optional ByVal ErrInfo As String = "") As Boolean

    Dim Contents As String
    Dim bAns As Boolean = False
    Dim objReader As StreamWriter
    Try

        objReader = New StreamWriter(FullPath)
        objReader.Write(strData)
        objReader.Close()
        bAns = True
    Catch Ex As Exception
        ErrInfo = Ex.Message

    End Try
    Return bAns
End Function

呼叫:

Dim File_Path as string = Environ("AppData") & "\SC\version.txt"
Dim versionStr as String = GetFileContents("File_Path")
Label1.text = versionStr
Label1.text.refresh ''// Sometimes this may be required depending on what you are doing!

答案 1 :(得分:0)

如果你想直接阅读版本而不是文本文件,请查看以下代码:

   If My.Computer.FileSystem.FileExists(fn) Then

        Dim fv As FileVersionInfo = FileVersionInfo.GetVersionInfo(fn)

        If fv Is Nothing Then Return -1 'file has no version info

        Return fv.FileMajorPart * 100000 + fv.FileMinorPart * 1000 + fv.FileBuildPart

    Else
        Return 0 'file does not exist
    End If