2014-02-21 52 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