java - Java 中的 FileNotFound 异常

标签 java hashmap

(我是 Java 新手)...我想将一些类字段值存储在 HashMap 中,然后将其写入文件(路径作为参数传递),然后恢复 HashMap 并获取所需信息。在我名为 Carte 的构造函数中,我得到一个异常,即找不到文件,无论如何它在正确的位置并且保存的数据在我的 xml 文件中。关于这一点的任何想法

发生异常:java.io.FileNotFoundException: users/stefan/desktop/lol.xml(没有这样的文件或目录)

// Salveaza toate obiectele create intr-un fisier
    public void salveazaObiecteleCreate(String caleSpreFisier) {

        HashMap table = new HashMap();

    table.put("Autorul", numelePrenumeleAutorului);
    table.put("Denumirea cartii", denumireaCartii);
    table.put ("Culoarea cartii",culoareaCartii);
    table.put ("Genul cartii ",gen);
    table.put ("Limba",limba);
    table.put ("Numarul de copii",numarulDeCopii);
    table.put ("Numarul de pagini",numarulDePagini);
    table.put ("Pretul cartii",pretulCartii);

  try  {

      File file = new File(caleSpreFisier);  
      FileOutputStream f = new FileOutputStream(file);  
      ObjectOutputStream s = new ObjectOutputStream(f);          
      s.writeObject(table);
      s.close();

       } catch(Exception e){

           System.out.println("An exception has occured");     
    }   
}


public Carte (String caleSpreFisier) {


 HashMap table = new HashMap();

File file = new File(caleSpreFisier); 


try  {

FileInputStream f = new FileInputStream(file);  
ObjectInputStream s = new ObjectInputStream(f);  
table = (HashMap)s.readObject();         
s.close();

 } catch(Exception e){

           System.out.println("An exception has occured : "+e);     
    }

for (Object key: table.keySet()) {

    System.out.println(table.get(key));
}

}

// end of class

}

最佳答案

查看消息:

An exception has occured : java.io.FileNotFoundException: users/stefan/desktop/lol.xml

请注意,它是 "users/stefan/[...]" - 这是一个相对文件名,因此将相对于当前工作目录进行解析。您确定您的意思不是 "/users/stefan/desktop/lol.xml" 前导斜线表示绝对文件名吗?

关于java - Java 中的 FileNotFound 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7576065/

相关文章:

java - 我应该如何将这个 block 分解成更小的功能单元?

java - 获取当前财政年度的开始日期

java - HashMap 键的随机访问

java - 在 REST Assured 中,如何使用参数映射?

java - Map 上的集合操作

java - 由于更改包名称而出错

java - 使用 Java 仅迭代一个 xml 标签

java - 为什么java没有.class之类的.field和.method反射关键字?

java - 是什么让 Hashmap.putIfAbsent 比 containsKey 后接 put 更快?

java - HashMap 中可以发生多少次重新哈希