Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Variable en un archivo de texto

Estas en el tema de Variable en un archivo de texto en el foro de Visual Basic clásico en Foros del Web. Variable en un archivo de texto Tengo un archivo de texto : micontrol.txt que tiene en la primera línea : 125.09 ese es el valor ...
  #1 (permalink)  
Antiguo 25/09/2009, 08:25
Avatar de Pasote  
Fecha de Ingreso: mayo-2006
Ubicación: España - Islas Canarias
Mensajes: 389
Antigüedad: 18 años
Puntos: 3
Variable en un archivo de texto

Variable en un archivo de texto

Tengo un archivo de texto : micontrol.txt

que tiene en la primera línea : 125.09

ese es el valor de una variable.

Esa variable va en una ruta : X:\Mis documentos\125.09\125.09.proyecto.doc

Tengo que lanzar un programita bat o vbs desde varios sitios y me gustaría saber cómo puedo "sacar" la variable con el script y proponerla en la ruta.....

Gracias
  #2 (permalink)  
Antiguo 25/09/2009, 12:30
Avatar de lokoman  
Fecha de Ingreso: septiembre-2009
Mensajes: 502
Antigüedad: 14 años, 7 meses
Puntos: 47
Respuesta: Variable en un archivo de texto

Cita:
Iniciado por Pasote Ver Mensaje
Variable en un archivo de texto

Tengo un archivo de texto : micontrol.txt

que tiene en la primera línea : 125.09

ese es el valor de una variable.

Esa variable va en una ruta : X:\Mis documentos\125.09\125.09.proyecto.doc

Tengo que lanzar un programita bat o vbs desde varios sitios y me gustaría saber cómo puedo "sacar" la variable con el script y proponerla en la ruta.....

Gracias
Hola!!!!
Verifica el siguiente codigo y nos avisas!!!!!!!!

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile("d:\test.txt")
Set objFS = CreateObject("Scripting.FileSystemObject")

Set WshShell = CreateObject("WScript.Shell")
Const FOR_READING = 1

strFilePath = "d:\test.txt"
Set objTS = objFS.OpenTextFile(strFilePath, FOR_READING)

Variable =objTS.Readline
RutaDoc = "d:\" & Variable & ".proyecto.doc"

WshShell.Run RutaDoc
Set WshShell = Nothing

PD:Trata de usar un Path corto
  #3 (permalink)  
Antiguo 25/09/2009, 15:47
Avatar de Pasote  
Fecha de Ingreso: mayo-2006
Ubicación: España - Islas Canarias
Mensajes: 389
Antigüedad: 18 años
Puntos: 3
Respuesta: Variable en un archivo de texto

Lo intento. El path está ya prefijado y no puedo cambiarlo.

Exactamente es del tipo :

Y:\GABINETE\PROYECTOS\125.09\125.09.proyecto.doc

y no tengo forma de acortarlo más.

Probaré con el código y comentaré :

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile("Y:\GABINETE\PROYECTOS\MODELOS\CONT ROL\MiControl.txt")
Set objFS = CreateObject("Scripting.FileSystemObject")

Set WshShell = CreateObject("WScript.Shell")
Const FOR_READING = 1

strFilePath = "Y:\GABINETE\PROYECTOS\MODELOS\CONTROL\MiControl.t xt"
Set objTS = objFS.OpenTextFile(strFilePath, FOR_READING)

Variable =objTS.Readline
RutaDoc = "Y:\GABINETE\PROYECTOS\" & Variable & "\" & Variable & ".proyecto.doc"

WshShell.Run RutaDoc
Set WshShell = Nothing

Última edición por Pasote; 25/09/2009 a las 16:04
  #4 (permalink)  
Antiguo 25/09/2009, 16:13
Avatar de Pasote  
Fecha de Ingreso: mayo-2006
Ubicación: España - Islas Canarias
Mensajes: 389
Antigüedad: 18 años
Puntos: 3
Respuesta: Variable en un archivo de texto

No hay interacción alguna. Por cosas del copy/paste , al igual que en el post se ocasiona un espacio en CONT ROL y en t xt , pero lo subsané y no hay interacción .

El código que aporté más arriba no funciona.

Nota : estoy utilizando un vbs
  #5 (permalink)  
Antiguo 26/09/2009, 08:07
Avatar de pkj
pkj
 
Fecha de Ingreso: julio-2006
Ubicación: Órbita sincrónica
Mensajes: 899
Antigüedad: 17 años, 9 meses
Puntos: 29
Respuesta: Variable en un archivo de texto

Igual te incluye algún espacio al leer la línea del fichero, o la propia línea no solo contiene el número, sino que contiene algún espacio además.
¿Has probado a ver el resultado en un msgbox?

Prueba a cambiar esta línea:

Variable =Trim$(objTS.Readline)

A veces la cosa más tonta nos hace tropezar.

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:02.