2015-02-06 21 views
-2

我現在已經找到了解決之前問題的解決方案,但我現在需要更多的幫助。我想比較字符串用戶輸入到文本文件中找到的字符串列表。我成功了,但現在我想要做同樣的事情,而不是文件系統中的文本文件,我希望它在應用程序資源中。我確實找到了一種方法讀取資源文本文件,並通過使其輸出內容在消息箱中來確認它,但是現在,當我將普通流讀取器代碼替換爲讀取資源文件的應用程序時,應用程序位於此處,並且不進行任何操作,而是不給出消息框來確認它發現像文件流代碼中的字符串匹配。這裏是我現在所擁有的:我需要幫助將資源中的文本文件中的字符串行與文本框中的字符串行進行比較(vb.net)

Imports System.IO 
Imports System.Resources 
Imports System.Reflection 

Public Class Form1 


    Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click 


'The original stream reader code bit that worked:Dim Lines As String = IO.File.ReadAllLines("1.txt") 

     Dim Lines As String = My.Resources.ResourceManager.GetObject("_1") 

'Above is the new resource reader code that is in place of old stream reader IO code 


For Each line As String In Lines 'Every time the program reads a new line from the textfile database 


If line = TextBox1.Text Then'if a line from the text file 'matches that with the textbox input 
       MsgBox("works")'user confirmation it matched 
       GoTo A'jumps to "A:" to end the "for" loop 
      Else 

      End If 
     Next 
A:'where the jump leads to 

    End Sub 
End Class 

回答

0

您的對於每個聲明有效地將拆分爲單個字符而不是文本行。你需要使用類似:?

Dim actualLines() As String = lines.Replace(vbCrLf, vbCr).Split(vbCr) 
     For Each line As String In actualLines 
... 
+0

嗨感謝名單回答我的問題,但我試圖取代我的代碼與你的,但我仍然有同樣的結果任何建議 – 2015-02-06 16:09:45

+0

放在一個斷點,並確保線路包含了什麼你認爲它的確如此。 – 2015-02-06 22:04:37

+0

嗨我試過了斷點,但事實證明,vb.net在文件系統中識別列表的方式不同於文件資源。在文件資源中,列表被識別爲一個巨大的字符串,而在文件系統中它被識別爲單獨的行,每行代表我的字符串在那裏。我可以改變這種解釋或至少讓文件不被其他人或程序訪問? – 2015-02-10 17:59:28

相關問題