Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: CAEL20 en 13 Marzo 2018, 02:16 AM

Título: Lectura de un txt, error en rutas con espacio
Publicado por: CAEL20 en 13 Marzo 2018, 02:16 AM
Saludos tengo un problema para leer un txt con un .bat, este .bat si me sirvio con rutas que no tienen espacios por ejemplo:
D:\CARPETA1\archivo.txt
pero si meto el .bat y el .txt en otra ruta que tenga espacio, ejemplo:
D:\CARPETA CON ESPACIO\archivo.txt
da un erro y solo pretende abrir la ruta hasta D:\CARPETA de ahi en adelante de ese espacio no poner completa la ruta, alguien me puede ayudar a solucionar esto.

Código (bash) [Seleccionar]
@echo off
set ruta= %~d0%~p0archivo.txt
echo %ruta%

for /f "tokens=*" %%x in (%ruta%) do (set psw=%%x)
echo %psw%
pause
exit
Título: Re: Lectura de un txt, error en rutas con espacio
Publicado por: Eleкtro en 13 Marzo 2018, 16:42 PM
Cualquier variable de tipo string y cualquier expresión/argumento con espacios en blanco debes encerrarlo entre comillas dobles para evitar este tipo de fallos. Es una regla básica.

1:
set "ruta=%~dp0archivo.txt"

2:
for ... in ("%ruta%") do (...)

saludos.
Título: Re: Lectura de un txt, error en rutas con espacio
Publicado por: CAEL20 en 14 Marzo 2018, 00:11 AM
gracias si ya aparece la ruta, teniendo la ruta como podre abrir el archivo de texto?