COMO LER APARTIR DA SEGUNDA LINHA EM TXT
Olá pessoal.
Estou com dificuldade em que esta rotina me leia o conteudo de um txt apartir da 2ª Linha.
Deixo-vos aqui o código para que me possam ajudar.
Para chamar a rotina :
Grato desde já pela vossa atenção.
Atentamente.
Programadorvb6
Estou com dificuldade em que esta rotina me leia o conteudo de um txt apartir da 2ª Linha.
Deixo-vos aqui o código para que me possam ajudar.
Public Sub CarregarTopicos(ByRef combo As System.Object, ByRef Nome_Ficheiro As String)
Try
Dim file_name As String = ObjFuncoes.GetAppPath & [Ô]\[Ô] & Nome_Ficheiro
Dim stream_reader As New IO.StreamReader(file_name, System.Text.Encoding.Default)
Dim line As String
Dim Linhas As ULong
Linhas = 0
line = stream_reader.ReadLine()
Do While Not (line Is Nothing)
line = line.Trim()
If line.Length > 0 Then
If Linhas > 1 Then
combo.Items.Add(line)
line = stream_reader.ReadLine()
End If
End If
Linhas += 1
Loop
stream_reader.Close()
Catch exc As Exception
[ô] Comunicar erros
MsgBox(exc.Message, MsgBoxStyle.Exclamation, [Ô]Erro ao ler o ficheiro[Ô])
End Try
End Sub
Para chamar a rotina :
CarregarTopicos(Me.Links2, [Ô]topicos.txt[Ô])
Grato desde já pela vossa atenção.
Atentamente.
Programadorvb6
Qual é o resultado do código que postou? O que ocorre?
Cara você pode fazer uma gambiarra
Este é um exemplo de um programa meu onde a primeira linha é: [ResponseResult] mas ela não aparece na MsgBox
Adpte ao seu código e veja se te ajuda.
Este é um exemplo de um programa meu onde a primeira linha é: [ResponseResult] mas ela não aparece na MsgBox
Dim Arquivo As New StreamReader([txt-color=#e80000][Ô]C:\RHDSetup.log[Ô][/txt-color])
Dim Contador As Integer = 0
Dim Texto As String = [txt-color=#e80000][Ô][Ô][/txt-color]
While Not Arquivo.EndOfStream
Texto = Arquivo.ReadLine
If Not Contador = 0 Then
MsgBox(Texto)
End If
Contador = 1
End While
Arquivo.Close()
Adpte ao seu código e veja se te ajuda.
Olá pessoal amigo.
Após ler as vossas opiniões e seguir alguns dos vossos conselhos fiz assim :
Nota : Não sei se é a melhor forma de um código Agilizado, mas se souberem de uma forma mais eficaz e rápida é só postarem.
Obrigado!
Agradeço desde já a vossa atenção e principalmente a colaboração em me ajudarem.
Atentamente.
Programadorvb6
Após ler as vossas opiniões e seguir alguns dos vossos conselhos fiz assim :
[ô]Caregar uma ComboBox
[ô]Usar : CarregarTopicos(< Nome da ComboBox,< Nome do Arquivo Txt >)
Public Sub CarregarTopicos(ByRef combo As System.Object, ByRef Nome_Ficheiro As String)
Try
[ô]Redirecciona pela classe objfuncoes indicando o caminho onde se encontra o arquivo Txt
Dim file_name As String = ObjFuncoes.GetAppPath & [Ô]\[Ô] & Nome_Ficheiro
Dim stream_reader As New IO.StreamReader(file_name, System.Text.Encoding.Default) [ô]Lê o texto e configura-o para : Encodig(default)
Dim Ler_LinhaStr As String
Dim Linhas As ULong
Linhas = 0
Ler_LinhaStr = stream_reader.ReadLine()
Do While Not stream_reader.EndOfStream [ô] Efectuar tarefa enquanto não chegar ao fim do texto.
If Linhas > 1 Then [ô]Passa a 1º Linha
combo.Items.Add(Ler_LinhaStr)
End If
Ler_LinhaStr = stream_reader.ReadLine() [ô]Lê conteúdo da Linha seguinte
Linhas += 1 [ô]Incrmenta Linha
Loop
stream_reader.Close() [ô]Fecha abertura de arquivo quando terminado a sua leitura.
Exit Sub
Catch exc As Exception
[ô] Reporta erros se existirem
MsgBox(exc.Message, MsgBoxStyle.Exclamation, [Ô]Erro ao abrir o ficheiro.[Ô])
End Try
End Sub
Nota : Não sei se é a melhor forma de um código Agilizado, mas se souberem de uma forma mais eficaz e rápida é só postarem.
Obrigado!
Agradeço desde já a vossa atenção e principalmente a colaboração em me ajudarem.
Atentamente.
Programadorvb6
Olá galera + uma vez.
Para que me entendam melhor a que me refiro deixo aqui o parte do código para que me possam ajudar :
Conteúdo do Arquivo : topicos.txt
GERAL - NOTÃCIAS
Fotografia
História e Património
Literatura
Coro de Câmara de Montargil
Artesanato (Novo)
Mercearia de Montargil
Pintura
GymnArt
Astronomia
Ciência e Novas Tecnologias
Eco-Lazer
Futebol
Outras Actividades
Tá-se Bem!
Tá-se Mal!
Ofertas
Pesca Desportiva e de Lazer
Fiz a rotina : [ CarregarTopicos] para carregar para uma ComboBox o texto que se encontra no arquivo : topicos.txt ; menos a 1º linha que não pode ser = a : GERAL - NOTICIAS ; e o que me está a acontecer agora é que a rotina não lê a última linha := Pesca Desportiva e de Lazer
Alguém faz ideia do que pode ser ?
Grato desde já pela vossa atenção.
Atentamente.
ProgramadorVB6
Para que me entendam melhor a que me refiro deixo aqui o parte do código para que me possam ajudar :
Imports System.IO
Public Class AberturaSite
[ô][ô][ô] <summary>
[ô][ô][ô] Função para indicar onde se encontra a aplicação do utilizador
[ô][ô][ô] </summary>
[ô][ô][ô] <remarks></remarks>
Public Function GetAppPath() As String
Dim i As Integer
Dim strAppPath As String
strAppPath = System.Reflection.Assembly.GetExecutingAssembly.Location()
i = strAppPath.Length - 1
Do Until strAppPath.Substring(i, 1) = [Ô]\[Ô]
i = i - 1
Loop
strAppPath = strAppPath.Substring(0, i)
Return strAppPath
End Function
[ô]Caregar uma ComboBox
[ô]Usar : CarregarTopicos(< Nome da ComboBox,< Nome do Arquivo Txt >)
Public Sub CarregarTopicos(ByRef combo As System.Object, ByRef Nome_Ficheiro As String)
Try
[ô]Redirecciona pela classe objfuncoes indicando o caminho onde se encontra o arquivo Txt
Dim file_name As String = GetAppPath & [Ô]\[Ô] & Nome_Ficheiro
Dim stream_reader As New IO.StreamReader(file_name, System.Text.Encoding.Default) [ô]Lê o texto e configura-o para : Encodig(default)
Dim Ler_LinhaStr As String
Dim Linhas As ULong
Linhas = 0
Ler_LinhaStr = stream_reader.ReadLine()
Do While Not stream_reader.EndOfStream
If Linhas > 0 Then [ô]Passa a 1º Linha
combo.Items.Add(Ler_LinhaStr)
End If
Ler_LinhaStr = stream_reader.ReadLine() [ô]Lê conteúdo da Linha seguinte
Linhas += 1 [ô]Incrmenta Linha
Loop
If stream_reader.EndOfStream = True Then
stream_reader.Close() [ô]Fecha abertura de arquivo quando terminado a sua leitura.
Exit Sub
End If
Catch exc As Exception
[ô] Reporta erros se existirem
MsgBox(exc.Message, MsgBoxStyle.Exclamation, [Ô]Erro ao abrir o ficheiro.[Ô])
End Try
End Sub
End Class
Conteúdo do Arquivo : topicos.txt
GERAL - NOTÃCIAS
Fotografia
História e Património
Literatura
Coro de Câmara de Montargil
Artesanato (Novo)
Mercearia de Montargil
Pintura
GymnArt
Astronomia
Ciência e Novas Tecnologias
Eco-Lazer
Futebol
Outras Actividades
Tá-se Bem!
Tá-se Mal!
Ofertas
Pesca Desportiva e de Lazer
Fiz a rotina : [ CarregarTopicos] para carregar para uma ComboBox o texto que se encontra no arquivo : topicos.txt ; menos a 1º linha que não pode ser = a : GERAL - NOTICIAS ; e o que me está a acontecer agora é que a rotina não lê a última linha := Pesca Desportiva e de Lazer
Alguém faz ideia do que pode ser ?
Grato desde já pela vossa atenção.
Atentamente.
ProgramadorVB6
Cara pelo que eu vi seu txt será esta mesma lista mas só que vai acrescentar mais tópicos se eles forem criados no seu site, correto.
Você pode fazer o seguinte:
Aqui funcionou, só não sei se é isto mesmo que você espera do programa.
Você pode fazer o seguinte:
Dim Arquivo As New StreamReader(Application.StartupPath & [txt-color=#e80000][Ô] opicos.txt[Ô][/txt-color], System.Text.Encoding.Default)
Dim texto As String
While Not Arquivo.EndOfStream
texto = Arquivo.ReadLine
If Not texto = [txt-color=#e80000][Ô]GERAL - NOTÃCIAS[Ô][/txt-color] Then
ComboBox1.Items.Add(texto)
End If
End While
ComboBox1.SelectedIndex = 0
Arquivo.Close()
Aqui funcionou, só não sei se é isto mesmo que você espera do programa.
Tópico encerrado , respostas não são mais permitidas