簡體   English   中英

Java - 文件寫入 - 訪問被拒絕

[英]Java - file writing - access denied

我正在嘗試從我的 Java 應用程序中寫入一個文件,但除了應用程序目錄之外,我無法將其寫入任何地方。 我正在使用 Windows 10。我嘗試以管理員身份啟動 Eclipse 並嘗試使用 Launch4j 打包可運行的 Jar 文件,得到相同的錯誤。 任何想法如何將文件寫入用戶定義的目錄?

我正在使用 PdfWriter package,它是用 Java FileOutputStream 實例化的:

Document document = new Document();      
var writer = PdfWriter.getInstance(document, new FileOutputStream(directory));
                document.open();

您必須提供實際代碼的片段來檢測您的方法中的問題。 但是,如果您只需要一種編寫簡單文件的方法,請使用此方法(使用 java 8)

//Get the file reference
Path path = Paths.get("c:/output.txt");
 
//Use try-with-resource to get auto-closeable writer instance
try (BufferedWriter writer = Files.newBufferedWriter(path)) 
{
    writer.write("Hello World !!");
}

您需要附上您的源代碼以獲得更好的答案,但這里是一個工作寫入文件 function 的示例。

 void writeToFile(String input) throws IOException{
            File file = new File("C:\\YourDirectory\\FileName.txt");
            if (!file.getParentFile().mkdirs())
                    throw new IOException("Unable to create " + file.getParentFile());
            BufferedWriter out = new BufferedWriter(new FileWriter(file,true));
            try{
                    out.append(input);
                    out.newLine();
            } finally {
            

    out.close();
        } 
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM