2014-10-10 3 views
-3

텍스트 문서를 열고 txt에서 한 줄로 모든 줄에 새 배열을 추가하는 프로그램을 만들어야합니다. 이 코드로 시도했지만 작동하지 않습니다.TXT 파일에서 VB 2010 배열

Dim x As New List(Of String) 
Dim o As New IO.StreamReader("c:\*.txt") 
For Each a As String In o.ReadToEnd() 
    x.Add(a) 
Next 

아무도 도와 줄 수 있습니까? 감사.

+2

오류를 찾으셨습니까? 'For Each' 루프 다음에'x'의 내용은 무엇입니까? 우리는 더 많은 정보가 필요합니다. – SolarBear

+2

'Dim lines() As String = File.ReadAllLines (path)'의 문제점은 무엇입니까? –

+2

''하지만 작동하지 않습니다 '는 도움이 필요하신 내용에 대한 * 매우 * 부족한 설명입니다. – Plutonix

답변

-1
Dim r As New StreamReader(filename) 
    Dim x As New List(Of String) 
    TextBox1.Text = "" 
    Do While r.Peek > -1 
    x.add r.ReadLine 
    Loop 
    r.Close() 
0

아마도이 방법이 유용 할 것입니다. . .

Dim o As New IO.StreamReader("C:\PathTo\File.txt") 
    Dim x() As String = o.ReadToEnd.Split(CChar(Convert.ToChar(10) & Convert.ToChar(13))) 

    For Each elementX As String In x 
     Debug.WriteLine(elementX) ' display text from the file 
    Next 
3

전체 파일을 하나의 단일 문자열로 읽어들이므로 회 돌이를 반복 할 수 없습니다.

은 여러분의 인생을 더 쉽게 확인하고이 코드의 하나 개의 라인 문자열 배열로 모든 라인을 읽어

Dim lines() As String = File.ReadAllLines("c:\myfile.txt") 

물품.


참고 : 파일 이름의 와일드 카드가 작동하지 않습니다! 여전히에서는 StreamReader를 사용하려면


이처럼 수행

Dim lines = New List(Of String)() 
Using reader = New StreamReader("C:\MyFile.txt") 
    While Not reader.EndOfStream 
     lines.Add(reader.ReadLine()) 
    End While 
End Using 

Using 명령은 자동으로 독자를 폐쇄을 담당한다.