[英]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.