Programación Específica > Matlab

 Entrada de fichero

(1/1)

Ciklope:
Necesito crear un programa que pida al usuario el nombre de un fichero previamente creado por él, para posteriormente cargar el fichero en una matriz y trabajar sobre ella.

Mi problema es que me gustaría mostrar un mensaje de error en caso de que el usuario teclee un nombre incorrecto, y darle la oportunidad de volver a intentarlo, pero no sé cómo hacerlo.

Estaré muy agradecido por cualquier pequeña ayuda. Un saludo a todos

Ciklope:
Si no se puede hacer de esa forma, podría obligar al usuario a que el fichero de entrada tenga un determinado nombre. Per aún así, tengo un problema: si el usuario escribe uno solo de los caraceres del nombre del fichero, Matlab lo da por válido. Os pego un trozo del programa para que lo veáis:

chivato='ficheroentrada.txt'
entrada=input('Escriba el nombre del fichero');
while entrada~=chivato
       entrada=input('Escriba el nombre del fichero');
end


De esta forma, si el usuario escribe "f" el programa sale del lazo while y continúa.

Geo:
Para comparar cadenas de texto se debe utilizar la función strcmp o strcmpi, la primera distingue entre mayúsculas y la segunda no. Estas funciones comparan dos cadenas de texto y devuelven 1 en el caso de que sean iguales, 0 si no.
Usarías algo como esto:


--- Código: Text --- esperado = 'archivo.txt';recibido = ''; while ( strcmpi( esperado, recibido ) ~= 1 )    recibido = input( 'Introduzca nombre de archivo: ', 's' );end  Si deseas mostrar un error si el archivo no corresponde, podrías hacerlo así:


--- Código: Text --- esperado = 'archivo.txt';recibido = input( 'Introduzca nombre de archivo: ', 's' ); while ( strcmpi( esperado, recibido ) ~= 1 )    recibido = input( 'Error en nombre de archivo, introduzca de nuevo: ', 's' );end  
No entendí muy bien si deseas restringir el nombre del archivo o si deseas evitar que se introduzca uno que no existe :p.

Suerte :).

Ciklope:
Perfecto, con eso me sirve :)

Muchas gracias!

Navegación

[0] Índice de Mensajes

Ir a la versión completa