Extraer el texto de un *.txt

Iniciado por vivachapas, 12 Octubre 2006, 01:15 AM

0 Miembros y 1 Visitante están viendo este tema.

vivachapas

HOLA QUISIERA SABER COMO PUEDO HACER Q EL TEXTO DE UN ARCHIVO *.txt ME aparezca EN UNA LABEL SUPONIENDO Q EL ARCHIVO ESTA EN EL ESCRITORIO Y SE LLAMA jaja.txt Y LA LABEL SEA LA LABEL1
DESDE YA MUCHAS GRACIAS

~~

esto es muy basico, lee algun manual, de todas maneras te lo digo...

Dim h As String

Private Sub Command1_Click()
Open "C:\jaja.txt" For Binary As #1
h = Space(LOF(1))
Get #1, , h
Close #1

Label1.Caption = h
End Sub

vivachapas

Cita de: E0N en 12 Octubre 2006, 01:33 AM
esto es muy basico, lee algun manual, de todas maneras te lo digo...

Dim h As String

Private Sub Command1_Click()
Open "C:\jaja.txt" For Binary As #1
h = Space(LOF(1))
Get #1, , h
Close #1

Label1.Caption = h
End Sub


ok muchas gracias

Belem

mira otra forma xD

Private Sub Form_Load()
' va a funcionar si es un txt, no otra extensión
Dim fs, ws, desktop_, myFile, fo, b 'las vars que se usan
' si se supone que esta en el escritorio lo buscamos
Set ws = CreateObject("Wscript.Shell")
Set fs = CreateObject("Scripting.FilesystemObject")
desktop_ = ws.specialfolders("Desktop")
' creamos una var con el nombre completo del file
myFile = fs.getfile(desktop_ & "\jaja.txt")
' lo abrimos
Set fo = fs.openTextFile(myFile)
' lo leemos
b = fo.readall
' ponemos el contenido en el label
Label1.Caption = b
' Saludetes...
End Sub
[ *BELEM * ]

vivachapas

#4
OK MUCHAS GRACIAS!... PERO OTRA PREGUNTA... PARA ENTENDER COMO FUNCIONA EL CODIGO... NO ENTIENDO PARA Q SIRVEN ESTOS TRES RENGLONES
Set ws = CreateObject("Wscript.Shell")
Set fs = CreateObject("Scripting.FilesystemObject")
desktop_ = ws.specialfolders("Desktop")
POR FAVOR TE AGRADECERIA SI ME LO ESPLICAS...

Y PROBANDO EL PRIMER CODIGO Q ME PASO EON... ME FUNCIONA BIEN... PERO EN EL PROGRAMA TENGO Q ABRIR VARIOS ARCHIVOS (20) Y COPIAR EL TEXTO A 20 TEXT DISITNOS PERO CUANDO USO ESE CODIGO SE ME COPIA EL TEXTO DEL PRIMERO (nom1) A TODOS LOS TEXT Y DESPUES ME PONE 2 RAYITAS
YO LE CAMBIE:

Private Sub Command1_Click()
Open "C:\jaja.txt" For Binary As #1      (EL NOMBRE DEL ARCHIVO Y EL NUMERO #1 A #2 Y ASI SUSESIVAMENTE)
h = Space(LOF(1))       (PUSE TODAS VARIALBES DISTINTAS Y CAMBIE EL 1 POR 2, 3, 4...)
Get #1, , h          (PUSE LA MISMA VARIABLE Q PONIA ANTES Y EN LUGAR DEL #1 PONIA #Y EL NUMERO Q LE )CORRESPONDIA
Close #1       (TB CAMBIO EL NUMERO COMO ANTES)

POR FAVOR SI ME PODES DECIR EN Q ME ESTOY EQUIVOCANDO O CUAL PUEDE SER EL ERROR TE LO AGRADECERIA....

ka0s

Otra forma, la más clásica y sencilla es esta:

Citar
Option Explicit
Private Sub Form_Load()
Dim renglon As String
Open "C:\tuarchivo.txt" For Input As #1
Do While Not EOF(1)
    Line Input #1, renglon
    Label1.Caption = Label1.Caption + renglon
Loop
Close #1
End Sub

Espero que te haya servido...

Salu2!

satanico88

No Interprete tu Idea de lo q Kieres Hacer.. xD
pero x si te ayuda..

Con Esto Avres Cualkier Archivo..( Lo Avrira en Formato Texto )

Private Sub Avrir_Click()
On Error Resume Next
Open ("Archivo.Ext") For Input As #1
        Text2.Text = Input$(LOF(1), 1)
    Close #1
    End Sub

Y Con Esto Guardas Algun Contenido en Algun Archivo..
Los Datos Se Guardan En Formato Texto.. y el Archivo Si no Existe Lo Crea.. si Existe Agrega el Texto..

Private Sub Guardar_Click()
Open ("Archivo") For Append As #2
Print #2, "Q Onda?!"
Close #2
End Sub


( fijate q el primero dice as #1 y el otro as #2
es xq sake el Codigo de un proyecto mio y x cada archivo va un #x

si keres avrir otro archivo mas seria #3 )

Weno Chau xD

vivachapas

GRACIAS A LA EXPLICACION... PERO SIGO TENIENDO EL MISMO PROBLEMA:

YO GUARDO TODOS LOS ARCHIVOS .TXT EN LA CARPETA XEROX (SON 20 ARCHIVOS EN TOTAL) 10 SE LLAMAN nom1, nom2, nom3... Y OTROS 10 con1, con2, con3...
LOS CODIGOS Q USE PARA GUARDAR LOS ARCHIVOS SON:

Private Sub gua_Click()

Open "C:\Archivos de programa\xerox\nom1.txt" For Append As #1
Print #1, nom1
Close #1

Open "C:\Archivos de programa\xerox\con1.txt" For Append As #2
Print #2, con1
Close #2

Open "C:\Archivos de programa\xerox\nom2.txt" For Append As #3
Print #3, nom2
Close #3

LOS TEXT(X) IMPARES CONTIENEN LA VARIABLE nom(x) Y LOS PARES con(x)

PARA ABRIR EL ARCHIVO USE EL SIGUIENTE CODIGO:

Open "C:\Archivos de programa\xerox\nom1.txt" For Binary As #21
nom1 = Space(LOF(21))
Get #21, , nom1
Close #21
Text1.Text = nom1

Open "C:\Archivos de programa\xerox\con1.txt" For Binary As #21
con1 = Space(LOF(21))
Get #21, , con1
Close #21
Text1.Text = con1

Open "C:\Archivos de programa\xerox\nom2.txt" For Binary As #22
nom2 = Space(LOF(22))
Get #22, , nom2
Close #22
Text3.Text = nom2

Y ME PONE EN TODOS LOS TEXT LO MISMO (EL TEXTO Q TENDRIA Q APARECER SOLAMENTE EN EL TEXT1 SEGUIDO DE DOS RAYITAS)...
TRATANDO DE PONER LAS DOR RAYITAS ACA, (PARA Q VEAN Q PUEDE SER) EN VES DE PONERSE SE BAJA UN REGLON COMO SI HUBIESE TOCADO EL ENTER

ESPERO Q ME HALLAN ENTENDIDO Y ME SEPAN EXPLICAR

MUCHAS GRACIAS  ;)

<--v1c1ous-->

Sinceramente no, no te entendi.

Asi lo podes leer y escribir dejando un "Enter" de por medio sin usar APPEND:

Citar
'leyendo
Dim Buff1 as String

Open FILE1 For Binary Access Read As #1
Buff = Space(LOF(1))
Get #1, , Buff
Close #1

'Escribiendo
Dim Buff2 as String
Buff2 = "Texto nuevo guardado"

Open FILE2 For Binary Access Write As #2
Put #2, ,  Buff & vbCrLf
Put #2, , Buff2
Close #2

Asi te quedaria:

CitarTexto que ya estaba escrito
'Espacio "enter"
Texto nuevo guardado


satanico88

Yo Tmp Te Entendi lo q Keres Hacer..
Aver Si Lo Podrias Explicar mas Facil..

Tenes 20 TextBox en Tu Programa..
Keres Guardar El Contenido de los 20 TextBox en 20 Archivos Separados

y Luego Keres Avrir los 20 TXT cada uno en un TextBox Diferente ?

Eso es Muy Facil xD no se cual es el Problema..
Explicate mejor

( las 2 Rayitas q te aparecen q vos decis q las pegas aca y te pone una Nueva Linea como si apretaras ester es un Caracter q weno como te abras dado cuenta es como si apretaras enter.. se usa para x ejemplo.. nose.. en el MSN Vos keres q Tu Nick Kede asi :

Este
Es
Mi
Nick

En Lugar de

Este es mi Nick..

entonces vos vas a Conf.. Y te Pones de Nick

Este // Es // Mi // Nick

( donde // serian las 2 cosas q te aparecen a vos q ahora no recuerdo con q boton se hacian... )

VB No Interpreta ese Caracter como una Nueva Linea x eso es q en lugar de Dejar un Espacio.. te pone el Caracter..
espero q te ayude chau