Matlab - EJECUTAR ARCHIVOS DESDE OTRA CARPETA

 
Vista:

EJECUTAR ARCHIVOS DESDE OTRA CARPETA

Publicado por CARLOS (1 intervención) el 14/05/2014 21:57:19
HOLA JOSE. AYUDAME XFA CON ESTA:

QUIERO EJECUTAR DESDE UN GUI UN ARCHIVO .m QUE ESTA EN OTRA CARPETA. LO UNICO Q PUDE HACER ES EJECUTAR LOS ARCHIVOS Q ESTAN EN EL CURRENT FILE.

POR EJEMPLO: ABRO MI GUI QUE ESTÁ EN LA CARPETA1 Y LUEGO QUIERO EJECUTAR DESDE AHI , OTRO ARCHIVO .m QUE ESTA DENTRO DE LA CARPETA2, LA CARPETA2 ESTA DENTRO DE LA CARPETA1.

TE AGRADESCO POR TU AYUDA DE ANTEMANO.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

EJECUTAR ARCHIVOS DESDE OTRA CARPETA

Publicado por Ignacio (26 intervenciones) el 15/05/2014 08:57:06
Hola Carlos!!!

Yo tenía el mismo problema y he hecho lo siguiente:

Lo primero en el openingfcn de mi guide guardo donde esta la propia guide (para luego volver y poder ejecutar el resto de ordenes y funciones)
1
2
W=what;
handles.W=W.path;

En handles.W ahora tengo guardado el directorio donde se encuentra la guide.

Ahora ejecuto lo siguiente:

1
[handles.Datas handles.Directorios]=uigetfile('*mat', 'Selecciona el archivo a procesar');

Con uigetfile se abre un explorador de archivos muy bueno bonito y barato jajaja.

Con handles.Datas guardo el nombre del archivo en forma String y con handles.Directorios Guardo el directorio de donde se encuentra el archivo

Lo siguiente es ir al directorio del archivo que he "abierto" con uigetfile:

1
2
3
4
5
6
if handles.Datas ~=0
cd (handles.Directorios)
load(handles.Datas);
else
return
end

Explico, el if lo pongo por si el usuario en vez de abrir algo le da a a Cancelar. Si no pones el return creo recordar que el explorador de archivos se queda abierto hasta que el usuario le da a la cruz de cerrar arriba a la derecha aunque el usuario le de al botón de Cancelar.

con cd(handles.Directorios) voy al directorio del archivo y con load(handles.Datas) cargo el archivo.

Aquí ya vendría el código pertinente que desees.

Por último ejecuto la orden
1
cd(handles.W)

Esto lo hago para volver al directorio de mi guide y que así no me de errores si luego voy a ejecutar otras funciones que se encuentran en este directorio, el mismo que el de la guide.

Te aconsejo que uses el comando help con las ordenes que te he mostrado para que veas como usarlas y para que sirven porque yo lo he explicado de una forma muy pobre y si lo miras quizá puedas usarlas de un modo que te valgan más.

Espero haber ayudado.

Saludos,
Ignacio.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar