Java 创建文件的最简单方法是什么?
这似乎不会创建文件或文件夹。为什么?Java 创建文件的最简单方法是什么?,java,file,file-io,directory,Java,File,File Io,Directory,这似乎不会创建文件或文件夹。为什么? import java.io.*; public class file1 { public static void main(String[] args) { File text1 = new File("C:/text1.txt"); File dir1 = new File("C:/dir"); } 下面的这个确实创建了一个文件 import java.io.*; public class file3 { public s
import java.io.*;
public class file1
{
public static void main(String[] args)
{
File text1 = new File("C:/text1.txt");
File dir1 = new File("C:/dir");
}
下面的这个确实创建了一个文件
import java.io.*;
public class file3
{
public static void main(String[] args)
{
try
{
FileWriter text1 = new FileWriter("C:/text.txt");
FileWriter dir = new FileWriter("C:/dir");
}
catch(Exception e){}
}
}
但是,该目录似乎有一个奇怪的不可用图标
如何创建目录。
创建文件和文件夹的其他简单方法有哪些。如果要使用
文件创建目录,请执行以下操作:
new File("C:/dir").mkdirs();
令人惊讶的是,文件
类并不表示文件。它实际上表示文件的路径名。。。这可能存在,也可能不存在
要用Java创建一个文件,您需要打开它进行输出;e、 g
File text1 = new File("C:/text1.txt");
FileOutputStream os = new FileOutputStream(text1); // The file is created
// here ... if it doesn't
// exist already.
// then write to the file and close it.
或者您可以这样做-newfileoutputstream(“C:/text1.txt”)
。在这两种情况下,现有文件都将被截断。。。除非将FileOutputStream
与一个布尔参数一起使用,该参数表示openforappending
如果要创建文件而不向其中写入任何数据,也可以执行以下操作:
File text1 = new File("C:/text1.txt");
text1.createNewFile();
但是,只有当文件不存在时,才会创建新文件
要在Java中创建目录,请使用File.mkdir()
或File.mkdirs()
方法
更新
你评论道:
我尝试了File dir=new File(“C:/dir1”).mkdir()代码>它表示不兼容的类型
没错。mkdir()
方法返回一个boolean
,说明它是否创建了目录。你需要写的是这样的:
File dir = new File("C:/dir1");
if (dir.mkdir()) {
System.out.println("I created it");
}
try (FileOutputStream os = new FileOutputStream(text1)) {
// now write to it
}
在使用您不熟悉的方法或类之前,请务必阅读JAVADOCS
还有几件事你需要知道:
- 处理确保文件关闭问题的最佳方法是执行以下操作:
File dir = new File("C:/dir1");
if (dir.mkdir()) {
System.out.println("I created it");
}
try (FileOutputStream os = new FileOutputStream(text1)) {
// now write to it
}
当块退出时,流os
将自动关闭
- 捕获
异常
通常是“不好的做法”。捕获异常
而在处理程序中什么都不做总是“糟糕的做法”。这种情况隐藏了bug的证据,并使代码不可预测且难以调试
要创建目录,您可以使用:
if(!text1.exists()){
text1.mkdir();
}
和用于创建文件使用:
if(!text1.exists()){
try {
text1.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
谢谢我尝试了File dir=new File(“C:/dir1”).mkdir();它说不兼容的类型。找到布尔值,但应为java.io.File.Is catch(IOException e){System.out.print(“bug”);}好吗?更好。更好的是catch(IOException e){System.out.print(“意外异常:+e);}
OK。谢谢但是我仍然无法创建目录。啊。谢谢我还尝试了:File dir=new File(“C:/dir1”);dir.mkdir();我试过File dir=new File(“C:/dir1”).mkdir();但是我发现了一个错误。找到了布尔值,但需要java.io.FileTry,正如我写的那样,只需要这一行,而不需要文件dir=part.Thaks。我创建了一个新文件(“C:/dir2”).mkdirs();它创建了目录dir2。为什么文件dir2=新文件(“C:/dir2”).mkdirs();不工作?谢谢。text1.存在于哪里?如何在C:/?此处text1
是代码`File text1=新文件(“C:/text1.txt”)的变量<代码>
exists()`是文件的方法,请在文档中阅读。像这样理解我有点困难。如果可以的话,请给出try块中的完整代码-2行,4行,随便什么。