【java】怎么通过外网直接发送文件到指定IP的共享文件夹内?

【java】怎么通过外网直接发送文件到指定IP的共享文件夹内?

问题描述:

目标电脑已买域名有固定IP,不使用服务器的方式怎么直接发送文件到这台电脑的共享文件夹内?当然,连接该电脑的帐号密码是有的。

百度试过 jcifs 的 SmbFile,内网试都报错0xC000009A。就没跑通过,也不知道这个适不适用。。

求解决方案,或者说这本来就不可行的?

    public static void fileUploadByFtp() {
    FTPClient ftpClient = new FTPClient();
    FileInputStream fis = null;
    try {
        ftpClient.connect("192.85.1.9");
        ftpClient.login("username", "password");

        File srcFile = new File("E:\\test_back_081409.sql");
        fis = new FileInputStream(srcFile);
        // 设置上传目录
        ftpClient.changeWorkingDirectory("/home/zhangzhenmin");
        ftpClient.setBufferSize(1024);
        ftpClient.setControlEncoding("GBK");
        // 设置文件类型(二进制)
        ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
        ftpClient.storeFile("test_back_081901.sql", fis);
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        IOUtils.closeQuietly(fis);
        try {
            ftpClient.disconnect();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}