2014-02-21 53 views
1

我已保存写一个文本文件,它目前读:VBNET在文本文件中读取一行的特定列

“第一”,“姓”,“通”

我想读第三个密码列,并将其定义为一个变量。它基本上用于登录,如果通过文本文件匹配输入的通行证(来自用户)。

我已经搜索了大约一个小时,没有运气。有人能指导我走正确的道路吗?

谢谢。

+1

这不是一排。您可以将密码称为字段或列,但肯定不是*行*。这是一个CSV文件吗? –

+0

阅读行然后使用String.Split获取零件 – Plutonix

+0

@StevenDoggart我不知道,它只是一个文本文件类型。对不起,关于标题,其专栏是。我只是想读第3列,因为所有用户名第1行第3列将是密码。 – Cem

回答

1

简单的例子:

' get the values from the user somehow: 
    Dim first As String = "James" 
    Dim surname As String = "Bond" 
    Dim pass As String = "007" 

    Dim validated As Boolean = False ' assume wrong until proven otherwise 

    ' check the file: 
    Dim fileName As String = "c:\some folder\path\somefile.txt" 
    Dim lines As New List(Of String)(System.IO.File.ReadAllLines(fileName)) 
    For Each line As String In lines 
     Dim values() As String = line.Split(",") 
     If values.Length = 3 Then 
      If values(0).Trim(Chr(34)) = first AndAlso 
       values(1).Trim(Chr(34)) = surname AndAlso 
        values(2).Trim(Chr(34)) = pass Then 
       validated = True 
       Exit For 
      End If 
     End If 
    Next 

    ' check the result 
    If validated Then 
     MessageBox.Show("Login Successful!") 
    Else 
     MessageBox.Show("Login Failed!") 
    End If 
+0

当你逐行说你的意思是你读的每一行字段? – Cem

+0

它读取文件中的每一行(行),**和**将每行分隔成列(字段)。 –

1

如果这是一个CSV文件,好像是这种情况,那么最简单的方法是使用TextFieldParser类。 The MSDN already provides an excellent example如何使用它来读取CSV文件,所以我不打扰在这里重现它。阅读一文件一行一行地分裂每一个进入领域

+0

它只是一个.txt文件。文本文件类型。 – Cem

+0

CSV文件是文本文件。它是文本文件中数据的*格式*,用于确定它是否为CSV。 –

+0

谢谢我正在寻找“,”逗号分隔符,以确定行的好方法。 – Cem