vb.net如何获取C:\info文件中VERSION=1.7的值,并在label中显示1.7

 我来答
魔法软糖™
2019-04-20 · TA获得超过838个赞
知道小有建树答主
回答量:822
采纳率:94%
帮助的人:149万
展开全部

你好,软糖来回答一下。

你是要获取C:\info这个文件的版本吗?可以用下面的函数(放到任一Module中):

#Region "■  获取文件版本"
        ''' <summary>
        ''' 获取文件的版本。
        ''' </summary>
        ''' <param name="文件路径">必需。[String]。表示该文件的路径。</param>
        Public Function 获取文件版本(ByVal 文件路径 As String) As String
            Dim info As FileVersionInfo = FileVersionInfo.GetVersionInfo(文件路径)
            Return info.FileVersion
        End Function
#End Region

在窗体中加入代码:

利用Split函数获取=号后面的内容

Dim str As String = 获取文件版本("C:\info")
label1.Text = str.Split("=")(1)

还是说info是info.ini或info.txt文件,你需要读取它某行内容为

VERSION=1.7

的值,然后输出到label?

Imports System.IO

Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Label1.Text = 读取文件版本("c:\info.txt")
    End Sub
    Public Function 读取文件版本(ByVal 文件路径 As String) As String
        Dim 文件读取器 As StreamReader = New StreamReader(文件路径)
        Dim 搜索串 = "VERSION="
        While Not 文件读取器.EndOfStream
            Dim t语句 As String = 文件读取器.ReadLine
            If t语句.StartsWith(搜索串) Then
                Return t语句.Substring(搜索串.Length)
            End If
        End While
        Return ""
    End Function
End Class

调试已通过,结果图片:

更多追问追答
追问
用这个办法的话会导致文件被占用,有什么办法能解决吗?
追答
在Return之前把StreamReader释放掉就好了。文件读取器.Close()
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式