Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

Pasar últimos 10 archivos de una carpeta a otra

Buenas tardes, por medio del presente solicito sus recomendaciones para diseñar un vi que me realice la transferencia de los últimos 10 archivos de una carpeta a otra. Se trata de imágenes en formato jpg las cuales se van almacenando en una carpeta pero se requiere una carpeta adicional en donde se vayan mostrando sólo las 10 últimas. Espero sus sugerencias y recomendaciones, muchas gracias.

0 kudos
Mensaje 1 de 5
3.033 Vistas

Hola jagop

 

Yo propondría hacer una lista, la cual te permita ver los últimos 10 elementos ya sea por nombre o por algún dato de identificación como un index o fecha y hora.

 

Sería en una carpeta guardar todas las imágenes y en la otra solamente guardar los 10 archivos que contengan el mismo nombre que la lista, y todos los demás (que ya no son parte de los últimos 10) se vayan auto eliminando.

 

Saludos, espero esta idea sirva para desarrollar algo mejor.

0 kudos
Mensaje 2 de 5
2.979 Vistas

Juan Cesar gracias por la respuesta y pregunta, que operadores de LabView podría utilizar para genera la lista de la carpeta original que considere el parámetro que indique los 10 últimos archivos, por ejemplo la hora en que se almacenaron y después pasarlos a la nueva carpeta borrando los más antiguos para mantener la lista de 10, todo de manera automática revisando la carpeta original digamos cada media hora.  Saludos

0 kudos
Mensaje 3 de 5
2.968 Vistas

Comienza con la función "Create Folder" en la paleta FIle I/O.

 

Para buscar archivos encontré en otro post:

File I/O » Advanced File Functions » List Directory

 

Y en general la paleta File I/O te ofrece distintas funciones para el tratamiento de archivos, revísalas y comienza a experimentar, estamos aquí para apoyar en cualquier duda que resulte durante el proceso.

 

Éxito!

 

 

0 kudos
Mensaje 4 de 5
2.964 Vistas

Hola jagop !

 

Me parece que estas buscando la función "List Folder"

http://zone.ni.com/reference/en-XX/help/371361J-01/glang/list_directory/

La función te devolvera un arreglo de Strings con los nombres de los elementos contenidos en la carpeta de la ruta que le des a la función.

 

Depende de tí como seleccionarás los últimos 10, con List Folder Function sería muy sencillo ordenarlas por nombre ya que solo habría que ordenar los Strings, hay muchas personas que han hecho esto anteriormente, te dejo un par de ligas con ejemplos de como hacerlo:

https://forums.ni.com/t5/Example-Program-Drafts/LabVIEW-Sort-String-Array-Using-Common-Alphabetical-...

http://www.ni.com/example/25012/en/

 

Por último, para mover los archivos puedes ocupar la función "Move"

http://zone.ni.com/reference/en-XX/help/371361J-01/glang/move/

Requiere como entradas el path original del archivo y el de destino, debería ser sencillo de implementar. 

 

En caso de que llegues a trabajar con un gran volumen de archivos, podría ser buena idea ocupar un Call Library Function Node para llamar la API "movefile" de Windows. (Te adjunto un VI de ejemplo de esto último, pero me parece que Function Move será mejor para tu aplicación)

 

Saludos!

 

 

Kudos are welcome Guiño

 

Kudos are welcome 😉 marked solutions are awesome!
Mensaje 5 de 5
2.943 Vistas