Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Mago__

Dpuvida em ler conteúdo de arquivo

Recommended Posts

Olá. Bem, sou programador C e estou tendo que fazer uma modificação num sistema em VB.Queri saber como posso fazer para ler uma string de um arquivo e jogue numa variável até achar uma vírgula.Aí ele faz o que tem que fazer e depois pega a próxima letra após a vírgula e vai jogando novamente na variável até achar outra vírgula, e assim vai até acabar o arquivoAlguém pode me ajudar nisso? Em C seria bastante fácil... mas por não conhecer VB, não estou conseguindo sair do lugar.Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para abrir um arquivo texto e ler todo o seu conteúdo:

 

n = freefile()open "arquivo.txt" for input as #ntexto = input(lof(n), n)close #n

Ali em "texto" estará todo o conteúdo do arquivo. Agora, quanto a procurar pela vírgula, talvez seja interessante usar a função Split() para dividir a string para um vetor de acordo com um determinado caracter (no caso, a vírgula). Veja se o resultado é o esperado:

 

elementos = split(texto, ",")for each elemento in elementos	msgbox elementonext

Certo? ;)

 

Graymalkin

Compartilhar este post


Link para o post
Compartilhar em outros sites

Graymalkin, muito obrigado. Deu tudo certinho.Obrigado mesmo.Eu uso na minha empresa o VB5, então não tinha a função split.Achei na internet a função split para VB5.'Num módulo coloque a seguinte função:Public Function Split(ByVal Texto, _ Optional ByVal SearchStr As _ String = " ") As Variant Dim Words() As String, i As Integer Dim j As Integer, k As Integer If Len(Texto) Then k = 0 i = InStr(Texto, SearchStr) j = 1 Do While i ReDim Preserve Words(0 To k) Words(k) = Mid(Texto, j, i - j) k = k + 1 j = i + 1 i = InStr(j, Texto, SearchStr) Loop ReDim Preserve Words(0 To k) Words(k) = Mid(Texto, j, Len(Texto)) Else 'Fica compatível com o Split() do VB6, 'retornando Ubound() = -1 ReDim Words(-1 To -1) End If Split = WordsEnd FunctionMuito obrigado novamente.AbraçosSee ya

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.