JCIFS/SM es una librería pensada para lo que necesitas: intercambio de ficheros entre redes compartidas microsoft windows.
http://jcifs.samba.org/
Y como estoy generoso te copio incluso dos funciones que hice para copiar archivos desde una unidad de red, y a la misma unidad de red (ambas direcciones):
Código:
public void copiarFicheroDesdeUnidad (SmbFile in, File out)
{
SmbFileInputStream fis = null;
FileOutputStream fos = null;
try
{
fis = new SmbFileInputStream(in);
fos = new FileOutputStream(out);
byte[] buf = new byte[1024];
int i = 0;
while ((i=fis.read(buf)) != -1)
{
fos.write(buf, 0, i);
}
}
catch (Exception e) {}
finally
{
try
{
fis.close();
fos.close();
}
catch (Exception e) {};
}
}
public void copiarFicheroAUnidad (File in, SmbFile out)
{
FileInputStream fis = null;
SmbFileOutputStream fos = null;
try
{
fis = new FileInputStream(in);
fos = new SmbFileOutputStream(out);
byte[] buf = new byte[1024];
int i = 0;
while ((i=fis.read(buf)) != -1)
{
fos.write(buf, 0, i);
}
}
catch (Exception e)
{
e.printStackTrace();
}
finally
{
try
{
fis.close();
fos.close();
}
catch (Exception e) {};
}
}
}
Con este pedazo favor que te acabo de hacer me merezco que me votes reputación ;)
saludos