elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Trabajando con las ramas de git (tercera parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???  (Leído 4,430 veces)
‡‡‡ Ðξλ†Ћ Щλ†ζЋ ‡‡‡

Desconectado Desconectado

Mensajes: 56



Ver Perfil
VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???
« en: 15 Diciembre 2008, 02:15 am »

Hola, como estan:  :)

Estoy haciendo un script en VBScript, que despues he de postear aqui a ver que opinan o si les sirve de algo.

Pero tengo una duda, que espero que me puedan orientar:  :huh:

Set fso=CreateObject("Scripting.FileSystemObject")

Set arch=fso.OpenTextFile("C:\Scripts\archivo.txt", 1)
' archivo.txt tiene + de 5 lineas.

' En esta linea esta todo el problema.
arch.Line=2

lec=arch.ReadLine

arch.close

msgbox lec

Lo que quiero es que se pase a la linea 2, para que la lea y la guarde en la variable lec, pero me manda el siguiente error:

Wrong number of arguments or invalid property assignment: 'arch.Line'

No existe el metodo var.Line=# como tal?

Gracias de antemano.

Un saludo y Feliz Navidad.................. ;)  ;)  ;)


En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???
« Respuesta #1 en: 15 Diciembre 2008, 02:20 am »

No, no existe lo que pides, pero existe skipline  :P

Código
  1. Set fso=CreateObject("Scripting.FileSystemObject")
  2.  
  3. Set arch=fso.OpenTextFile("C:\Scripts\archivo.txt", 1)
  4. ' archivo.txt tiene + de 5 lineas.
  5.  
  6. arch.skipline
  7. 'con esta funcion saltas una linea
  8.  
  9. lec=arch.ReadLine
  10.  
  11. arch.close
  12.  
  13. msgbox lec

Con skipline lo que haces es saltar una linea, en tu ejemplo saltas una linea y quedas en la segunda, de este modo cuando la lees te da el texto de la segunda  ;)

Saludos y feliz navidad

P.d: Con etiquetas GeSHi queda más claro, pon las de VB  :P


« Última modificación: 15 Diciembre 2008, 02:23 am por Novlucker » En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
‡‡‡ Ðξλ†Ћ Щλ†ζЋ ‡‡‡

Desconectado Desconectado

Mensajes: 56



Ver Perfil
Re: VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???
« Respuesta #2 en: 15 Diciembre 2008, 05:31 am »

Amigo:

Te agradezco tu respuesta y tan rapido.

Perdon por volver a lo mismo, pero en el siguiente ejemplo que pongo:

Código
  1. Set fso=CreateObject("Scripting.FileSystemObject")
  2.  
  3. Set arc=fso.OpenTextFile("C:\Scripts\archivo.txt", 1)
  4.  
  5. Do Until arc.Line=5
  6. var=arc.ReadLine
  7. msgbox var
  8. Loop
  9.  
  10. arc.Close

no entiendo muy bien si realmente es que no se puede aplicar de forma independiente:

Código
  1. var=3
  2. x.Line=var

Por lo de GeSHi, es que no lo habia usado nunca  :P. De hecho ni sabia que existía  :o  ;D

Gracias nuevamente amigo.

Sabes de alguna propiedad que te permita colocarte en una linea en particular, como lo que estaba intentando yo con el Line?

Saludos!!!
En línea

Novlucker
Ninja y
Colaborador
***
Desconectado Desconectado

Mensajes: 10.683

Yo que tu lo pienso dos veces


Ver Perfil
Re: VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???
« Respuesta #3 en: 15 Diciembre 2008, 11:12 am »

Citar
Sabes de alguna propiedad que te permita colocarte en una linea en particular, como lo que estaba intentando yo con el Line?
El DO que ya tienes, pasa que lo estas aplicando mal, y como opción más legible tienes el FOR  :rolleyes:
Te lo muestro con el primer ejemplo que dejaste...

Código
  1. Set fso=CreateObject("Scripting.FileSystemObject")
  2.  
  3. Set arch=fso.OpenTextFile("C:\Scripts\archivo.txt", 1)
  4. ' archivo.txt tiene + de 5 lineas.
  5.  
  6. For i=1 to 5
  7. arch.skipline
  8. Next
  9.  
  10. lec=arch.ReadLine
  11. 'Leemos la línea 6
  12.  
  13. arch.close
  14. msgbox lec
Ya ves? con el For salto 5 líneas y leo la sexta :P

Saludos
En línea

Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD
"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein
‡‡‡ Ðξλ†Ћ Щλ†ζЋ ‡‡‡

Desconectado Desconectado

Mensajes: 56



Ver Perfil
Re: VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ???
« Respuesta #4 en: 16 Diciembre 2008, 04:14 am »

Vientos amigo  :laugh:, me has ahorrado varias lineas de codigo.

Es una super opción.
No cabe duda que el que sabe, sabe.

Gracias. Lo he de adecuar al script y ya si tengo alguna duda, te vuelvo a dar lata  ;D.

Saludos!!!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
create threads en vb6
Programación Visual Basic
z_ane_666 1 3,071 Último mensaje 12 Diciembre 2011, 21:42 pm
por MCKSys Argentina
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines