Java打印编写器似乎检测到文件,但未写入

时间:2018-06-21 04:34:08

标签: java file url uri printwriter

我在OS X上使用Netbeans,似乎无法将文本写到名为“ assets”的程序包中的文本文件中。

下面是我尝试完成写入文本文件的方式,到目前为止,我执行此操作的方法无效。

我尝试解决此问题的方法是将字符串转换为url,然后将url转换为uri。然后,我将uri用作新的文件参数。在尝试使用类print writer编写字符串之后。

public class Experiment {

File createFile(String path) {
    java.net.URL url = getClass().getResource(path);
    URI uri;
    try {
        uri = url.toURI();
    }
    catch (URISyntaxException e) {
        uri = null;
    }
    if ((url != null) && (uri != null)) {
        System.out.println("file loading sucess");
        return new File(uri);
    }
    else {
        System.out.println("Error file has not been loaded");
        return null;
    }
}

File file = createFile("/assets/myfile.txt");

public static void main(String[] args) {
    Experiment testrun = new Experiment();
    try {
        PrintWriter writer = new PrintWriter(new FileWriter(testrun.file));
        writer.println("it works");
        writer.flush();
        writer.close();

        System.out.println("string was written");
    }
    catch (IOException e) {
        System.out.println("there was an error while writing");
    }
}
}

我的try catch语句给出的输出表明文件写入代码已执行。

file loading sucess
string was written
BUILD SUCCESSFUL (total time: 2 seconds)

我也尝试使用绝对字符串路径来制作新文件,但结果为空。我的想法不多了,希望有人能提供一些指导或解决方案。

0 个答案:

没有答案