2014-11-11 3 views
0

나는 가지고있는 텍스트 상자에만 숫자를 표시하고 싶습니다. 지금은 내 코드가 텍스트 파일을 읽고 필요한 텍스트 (숫자)뿐만 아니라 텍스트 상자에 모든 코드를 추가합니다.파일에서 특정 텍스트 만 표시 - Visual Basic

tbRecipient.Text = My.Computer.FileSystem.ReadAllText("filepath") 

누구든지 올바른 방향으로 나를 가리키고이 문제를 해결할 수있는 방법을 알려 주시면 좋을 것입니다.

Steve, 017876 
Alan, 098578 
... 

내가 한 번 내가 파일을 가지고 텍스트 상자에 숫자 만 나열하려면 :

나는 파일이 포함 있습니다. 내가 사용하고이 작업을 수행하려면 :)하여 myFunction에서 다음

Dim i As Integer 

    For i = 0 To cbRecipients.CheckedItems.Count - 1 
     My.Computer.FileSystem.WriteAllText("filepath", cbRecipients.CheckedItems.Item(i) & vbCrLf, True) 
    Next 
    frmHome.myFunction() 

(이다 tbRecipient.Text = My.Computer.FileSystem.ReadAllText이 기능을 사용할 수 있습니다

+0

작은 대표 샘플을 사용하여 읽고있는 텍스트와 추출 할 숫자를 표시하십시오. 부분 문자열/중간과 같은 구문 분석이나 문자열 functins을 사용하여 원하는 텍스트를 가져올 수 있습니다. – NoChance

+0

내가 읽고있는 텍스트는 .... User a, 001, sales입니다. 사용자 b, 024, 프로젝트. 사용자 c, 087, 기술. – user1854914

+0

각 줄에는 ... bob, 002 (다음 줄) steve, 085 (다음 줄 ...)와 같은 이름과 번호가 포함되어 있습니다. – user1854914

답변

0

("파일 경로") :

subrutine에서
Function GetFileColumnContents(s_Path As String, ColumnNumber As Long, ColumnDelimiter As String, Optional s_OutputDelimiter As String) As String 

On Error GoTo ErrHandler 

    Open s_Path For Input As #1  'Open the txt file for readin as Temporary File Number 1 
    Do While Not EOF(1)    'Read line bu line until end of file 
     Line Input #1, Mystring  'Store the line value in Mystring 
     GetFileColumnContents = GetFileColumnContents & s_OutputDelimiter & Split(Mystring, ColumnDelimiter)(ColumnNumber - 1) 'process the string 
    Loop 
ErrHandler: 
    Close #1 

End Function 

전화 :

tbRecipient.Text = GetFileColumnContents("filepath", 2, ",", vbCrLf) 

편집 : 가 linenum = linenum 인 + 1 (위 편집) 함수에 neccesary 아니었다

s_Path :이다 ("C : \ TEST.TXT"같은) TXT 파일 경로

ColumnNumber는 다음 열인 텍스트 파일에. 데이터가 보이는 경우 : 빨간색

  • A, 123,

블루

  • B, 456, 다음 ColumnNumber 한 글자이며, ColumnNumber이 숫자는 3 색입니다.

    (ColumnNumber - 1)이 분할의 첫 번째 부분은 인덱스 0을 가지고 있지만, 텍스트 파일 열이에서으로 구분되어 결과의 항목을 나열 할 경우 ColumnNumber 1

    split("A, 123, red",",")(0) 'results to "A" 
    split("A, 123, red",",")(1) 'results to " 123" 
    

    때문에 콤마로 마지막 인수로 쉼표로 함수를 호출하십시오.

  • +0

    이것은 나를 위해 작동하지 않습니다. – user1854914

    +0

    Option Explicit을 추가하고 변수를 정의하라는 제안. 또한, (ColumnNumber - 1)은 무엇입니까? – NoChance

    +0

    Im ColumnNumber를 사용하지 않습니다. 기본적으로 텍스트 파일에서 문자 (사용자 a, 사용자 b, 요법)를 남기는 텍스트 파일에서 번호 (001, 002, ect) 만 추출합니다. 그 번호는 텍스트 상자 (001, 002, 097, ect)에 나열하고 싶습니다. – user1854914

    관련 문제