将文件从Windows Java应用程序移动到Linux机器

时间:2011-02-10 09:23:07

标签: java windows linux filesystems

我目前正在做一个必须在Windows机器上运行的项目。应用程序创建一个CSV文件并将其保存到Windows文件系统。我想要一种方法将这个文件传输到运行linux的机器到用户选择的目录。

我不是要求代码(虽然如果它有帮助那么感觉自由:P)但是要求更多使用什么协议(ftp等),而且我需要考虑任何因素,例如Linux中的权限,因为我是公平的具有丰富的Linux文件系统编程经验。

提前致谢:)

3 个答案:

答案 0 :(得分:2)

Windows机器可以看到linux文件系统吗? Linux机器上运行的是samba服务器吗?如果是这样,您只需将其从一个文件系统复制到另一个文件系统即可。

如果没有,您可以尝试SCP或SFTP,但需要设置密钥。另一种方法是使用Runtime.exec使用特定于Windows的命令实用程序来复制文件。

如果所有其他方法都失败了,请在linux服务器上运行java进程并使用sockets连接到它。您的Windows客户端可以将文件写入套接字,并且可以由Linux服务器写出。

答案 1 :(得分:0)

我会尝试使用SSH,因为SCP是安全传输文件的一种相当标准和方便的方式。在Java中,您可以使用jssh amoungst其他库。

答案 2 :(得分:0)

如果您不想以编程方式执行此操作,我建议您使用Rsync。它应该适用于大多数* nix发行版,并且您有一个名为DeltaCopy的Windows版本,它实现了相同的协议。