-2

我正在学习 Java,我正在尝试编写一个可以从.ser文件中读取的程序,我已经用一种writeTo()方法创建了该文件。

在告诉程序从中读取之前,我想知道系统中存在给定文件。

我的代码如下所示:

public boolean readFromSerializedFile(String fileName){
    FileInputStream fileInStream = null;
    ObjectInputStream objectInStream = null;

    try{
        fileInStream = new FileInputStream(fileName);  
        objectInStream = new ObjectInputStream(fileInStream);

有没有一种简单的方法可以确定具有参数名称的文件是否存在于根目录(或其他指定的位置)中?

4

5 回答 5

4

您可以使用File.exists()方法。

假设您想知道文件是否abc.xml存在。以下代码说明了如何执行此操作。

final File file = new File ("abc.xml");
final boolean exists = file.exists ();
System.out.println ("abc.xml " + (exists ? "exists" : "does not exist"));
于 2012-11-19T22:56:05.647 回答
3

其他人提到 File.exists,但如果您正在学习 Java 并且可能使用 Java SE 7,我建议使用新的 NIO File API 代替:

Files.exists(Paths.get(filename));

http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html#exists%28java.nio.file.Path,%20java.nio.file.LinkOption...% 29

另请注意,Oracle 的 Java 教程对于学习标准 Java API 非常有用:

http://docs.oracle.com/javase/tutorial/

http://docs.oracle.com/javase/tutorial/essential/io/fileio.html

http://docs.oracle.com/javase/tutorial/essential/io/check.html

于 2012-11-19T23:04:46.763 回答
1
Using java.io.File
...
String path = "C:\test.txt";
File f = new File(path);
if(f.exists())
于 2012-11-19T22:56:43.833 回答
0

您可以捕获java.io.FileNotFoundException,它将在您描述的案例场景中抛出。

于 2012-11-19T22:57:03.200 回答
0
    FileReader br = new FileReader(file);

   if(br.ready())
    return;
   else
    System.exit(1);
于 2012-11-19T23:01:17.683 回答