【问题标题】:Shell script java program not writing files correctlyShell脚本Java程序未正确写入文件
【发布时间】:2015-09-27 10:23:10
【问题描述】:

我有一个同步两个目录内容的 java 程序。该程序将这两个目录作为参数。

我创建了一个 shell 脚本来在 Linux 上运行该程序。当程序第一次运行时,它会在每个目录中创建一个.sync 文件,这在 Windows 上完美运行,但在 linux 上给我带来了一些问题。我对 linux 很陌生,所以不确定到底发生了什么。

我的程序使用以下代码创建.sync 文件...

FileWriter fileDir1 = new FileWriter(dir1 + "\\.sync");
fileDir1.write(obj.toJSONString());
fileDir1.flush();
fileDir1.close();

当我在 linux 上运行程序时,文件是在两个目录所在的同一目录中创建的,而不是在这两个目录中。生成的文件如下所示..

dir1\.syncdir2\.sync

任何帮助都会很棒。

【问题讨论】:

    标签: java linux shell


    【解决方案1】:

    使用正斜杠 / 而不是转义的反斜杠 \\,它适用于 Windows 和 Linux。

    FileWriter fileDir1 = new FileWriter(dir1 + "/.sync");

    【讨论】:

    • 谢谢,因为我是新手,我忘记了。文件从视图中隐藏。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-29
    相关资源
    最近更新 更多