Java 使用Files.write将字符串写入specefic创建文件夹的文件

Java 使用Files.write将字符串写入specefic创建文件夹的文件,java,java-8,Java,Java 8,我正在尝试创建一个文件夹,然后使用Files.write创建/写入该文件夹中的文本文件。我正在尝试下面的代码: File d = new File("Zfolder"); d.mkdir(); String dpath = d.getAbsolutePath(); String textpath = dpath + "\\test.txt"; Files.write(Paths.get(textpath ), "content".getBytes("utf_8"),StandardOpenOp

我正在尝试创建一个文件夹,然后使用Files.write创建/写入该文件夹中的文本文件。我正在尝试下面的代码:

File d = new File("Zfolder");
d.mkdir();
String dpath = d.getAbsolutePath();
String textpath = dpath +  "\\test.txt";
Files.write(Paths.get(textpath ), "content".getBytes("utf_8"),StandardOpenOption.APPEND);

我错过了什么?我刚从C#转到Java,因此,很抱歉代码编写得很糟糕

您需要添加
StandardOpenOption。如果文件不存在,则创建
以创建该文件;如果文件存在,则使用该文件;添加
StandardOpenOption。写入
以启用对该文件的写入访问。还有你的
路径。get(gg)
,gg
从哪里来

注意:不是
“content.getBytes”(“utf_8”)
,而是
“content.getBytes”(“utf-8”)


Files.write(path.get(gg)、“content.getBytes”(“utf_8”)、StandardOpenOption.CREATE、StandardOpenOption.write、StandardOpenOption.APPEND)

文件不应该存在。write将在文件不存在时创建该文件。事实上,我试过你的代码,但仍然不起作用。谢谢,我已经从“gg”的角度检查了代码。是错误还有,
Files.write()
假设
CREATE,write
如果不指定模式听起来不错。是的,请始终注意Java中的字符串名称。通过使用
“content”.getBytes(StandardCharsets.UTF_8)
,可以避免此错误…