Abrir archivo JMP usando variable y comodín<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Después de solicitar al usuario que seleccione un archivo de texto, el archivo se abre y se crea una variable según el nombre del sitio contenido en este nombre de archivo de datos de texto de la siguiente manera
dt.rawdata = Abrir (
Seleccionar archivo (......
)
);
// Crear cadena que es nombre de archivo
dtname = dt.rawdata << Get Name;
// Crear una variable llamada siteid que elimine solo el nombre del sitio del nombre de archivo
Si (Palabra (1, nombre de archivo, "_") == "UC",
siteid = "UC_" || Palabra (2, nombre, "_"),
siteid = Palabra (1, nombre de archivo, "_")
);
Con lo que estoy luchando ahora es cómo abrir un archivo de datos JMP cuyo nombre contiene el siteid que se acaba de determinar. Hay alrededor de 40 archivos de datos .xls y .jmp en un directorio y estoy intentando abrir el único archivo JMP que contiene siteid en el nombre de archivo de la siguiente manera
dónde ? es un comodín para la cadena de texto que sigue a los datos de LTEM. Los nombres de archivo siguen el formato siteid LTEM Data, yyyy - YTD.jmp, donde yyyy se refiere al año de inicio y varía según la ID del sitio.
dt.metplots = Abrir (
"$ dir_metplots /" || siteid || "LTEM Data?" || ".jmp"
);
¿Hay un comodín que pueda usarse para esto o hay alguna otra forma inteligente de lograrlo? Gracias por adelantado.
Re: Abrir archivo JMP usando Variable y comodínGracias ms
Eso funciona muy bien. Me preguntaba cómo, con el código provisto, pudo tomar los archivos JMP correctos a pesar de que existían muchos otros archivos con el prefijo siteid. Resulta que fue una suerte que el archivo correcto que quiero abrir fue el primero en aparecer en la lista con el prefijo siteid. Entonces, para asegurarme de que abrí el archivo JMP en el caso de que el primer archivo correspondiente a siteid en la lista no fuera un archivo JMP, agregué el siguiente código Finaliza con.
Para (i = 1, i <= n, i ++,
Si (AND (comienza con (archivos , siteid), termina con (archivos , "jmp")),
nombre_archivo = archivos ;
Descanso();
)
);
Aprendí mucho de este pequeño ejercicio. Gracias de nuevo por su ayuda.
Re: Abrir archivo JMP usando Variable y comodínNo creo que se puedan usar comodines aquí.
Tal vez este enfoque funcione para usted (los primeros comandos se copian desde arriba):
dt.rawdata = Abierto ( Seleccionar archivo ()) ;
// Crear cadena que es nombre de archivo
nombre = dt.rawdata << Obtener nombre ;
// Crear una variable llamada siteid que elimine solo el nombre del sitio del nombre de archivo
Si ( Palabra ( 1 , nombre , "_" ) == "UC" ,
Identificación del sitio = "UC_" || Palabra ( 2 , nombre , "_" ) ,
Identificación del sitio = Palabra ( 1 , nombre , "_" )
) ;
// Crear lista de archivos en el directorio
camino = "$ dir_metplots /" ;
archivos = Archivos en el directorio ( camino ) ;
norte = N artículos ( archivos ) ;
// Obtenga el nombre del archivo que comienza con siteid actual
por ( yo = 1 , yo <= norte , yo ++,
Si ( Comienza con ( archivos El yo ] , Identificación del sitio ) ,
nombre del archivo = archivos El yo ] ;
Descanso ()
)
) ;
// Abrir documento
dt.metplots = Abierto ( camino || nombre del archivo ) ;