使用Java中的FTP从Linux访问Windows共享驱动器

时间:2015-05-05 00:26:50

标签: java linux windows ftp

我在linux机器上运行我的Java App。我要求将文件写入Windows共享路径。要求是从linux到Windows的驱动器安装无法完成,并且不能使用像JCIFS这样的附加库。我想过使用FTP。 Linux机器支持FTP。我尝试使用连接到运行我的应用程序的同一台机器的FTPClient。(我同意这没有意义)。在同一台计算机上运行FTP客户端。我怎样才能将文件从linux传输到Windows驱动器?

APP->在服务器上运行 - >将文件写入某个位置

我想将文件从该位置(linux)复制到Windows驱动器而不使用安装概念和其他库?

运行此应用程序的计算机支持FTP。我使用FTPClient连接到同一台机器,我认为没有任何意义。但是我 我坚持这个。我对linux环境和访问文件的方式不太了解。

我的守则如下:请您在这种情况下建议我该怎么做?您的帮助将非常值得注意。

    public static void downloadFile(String server, String userName, String password, String remoteFilePath, String localFilePath) {
        remoteFilePath="/tmp/"; //linux path where [My app is running on linux environment.]
        localFilePath="\\\\host\\folder\\subfolder\\"; //This is where I need to transfer files from linux machine. [It is shared path]

        FTPClient ftpClient = new FTPClient();
        try {
            ftpClient.connect(server);

            ftpClient.login(userName, password);
            ftpClient.enterLocalPassiveMode();
            ftpClient.setFileType(FTP.BINARY_FILE_TYPE);

            FileOutputStream fos = new FileOutputStream(localFilePath);
            System.out.println("Start Transferring  file...");
        boolean isCompletedDownload=    ftpClient.retrieveFile(remoteFilePath, fos);
            System.out.println("File Transfer!!!" + isCompletedDownload);
    //      ftpClient.deleteFile(remoteFilePath);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            try {
            if (ftpClient.isConnected()) {
                ftpClient.logout();
                ftpClient.disconnect();
            }
            } catch (IOException ex) {
            ex.printStackTrace();
            }
        }

0 个答案:

没有答案