Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



sábado, 28 de enero de 2017

[Java] Mi primera utilidad PegaRuta

[Java] Mi primera utilidad

PegaRuta



Necesitaba hacer un pequeño programa que facilitara la copia de archivos a una ruta temporal.


El caso es que tenia que tenia que funcionar en Windows, con lo cual tenia dos alternativas: Hacerlo en Java o en Python

Como hay mucha documentación sobre java, me decidí por este último.

El programa debía leer una ruta de un archivo "pegada" en el portapapeles,  y hacer una copia del archivo en un directorio temporal.

Para leer el portapapeles, use este código:
 Clipboard cb = Toolkit.getDefaultToolkit().getSystemClipboard();
 Transferable t = cb.getContents(this);
// Construimos el DataFlavor correspondiente a String.
DataFlavor dataFlavorStringJava = new DataFlavor("application/x-java-serialized-object; class=java.lang.String");
// Si el dato se puede obtener como String, lo obtenemos
if (t.isDataFlavorSupported(dataFlavorStringJava)) {
 String texto = (String) t.getTransferData(dataFlavorStringJava);
}

Y Para la copia del fichero:
File FicheroOld=new File(texto);
                     
// copiamos el archivo a ruta temporal
// cambiando el nombre
                 
String separador = System.getProperty("file.separator");
                     
Path rutafin = Paths.get(separador + "tmp"+ separador + FicheroOld.getName());
                     
Files.copy(Paths.get(FicheroOld.getPath()),rutafin);
Nota:
Fijaros en la variable "separador", que va a variar si el sistema es linux o windows




Alojado en: https://github.com/jsbsan/pegaruta