【问题标题】:JAVA - Create a file in linux serverJAVA - 在 linux 服务器中创建文件
【发布时间】:2017-09-25 06:47:14
【问题描述】:

我正在尝试在 linux 服务器中创建目录和文件。我拥有所有权限,它可以在本地 Windows 机器上运行(“C:\home\images\784)。但是当我输入服务器 url 时它不起作用。

目录是:

String directorio = "10.30.10.117:/home/images/784/"
File folder = new File(directorio);
Boolean bol = folder.mkdirs();

当文件“文件夹”被创建时,它的绝对路径是:

"10.30.10.117:\home\images\784"

当我想写文件时,我得到了这个异常(目录不存在)

原因:java.io.FileNotFoundException: 10.30.10.117:\home\images\1508-1-N.png(文件名、目录名或卷标语法不正确)

非常感谢!

【问题讨论】:

  • 如果您想通过 SMB 或 CIFS 连接到 Windows 服务器,您需要使用支持该协议的库。

标签: java linux file server directory


【解决方案1】:

这里:

String directorio = "10.30.10.117:/home/images/784/"

您似乎错误地认为 Java File 类能够神奇地连接到远程系统以便在那里创建目录。

错了。您只能在本地文件系统上创建文件。

就这么简单。

【讨论】:

    【解决方案2】:

    如果机器“10.30.10.117”在您的本地网络上,并且如果您有权在该机器上创建文件,那么问题是

    File folder = new File("//10.30.10.117:/home/images/784/");
    File file   = new File("//10.30.10.117:/home/images/784/1508-1-N.png");
    folder.mkdirs();
    file.createNewFile();
    

    在写入文件之前创建它。

    但是如果机器“10.30.10.117”在您机器的外部网络上,那么您不能直接从您的机器创建文件或文件夹。你需要ftp连接vb...

    【讨论】:

    • 谢谢。这是一个有用的答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-14
    • 1970-01-01
    • 2016-09-26
    • 2014-11-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多