繁体   English   中英

读取/写入对象和列表到文件

[英]Read/Write objects and lists to file

我想从.txt文件写入/读取对象的属性。 我的主要工作是我的对象有一个Map<String, Object>我也想写。 我将尝试通过示例进行解释:

我有一家医院,有部门,每个部门都有医生。 我希望能够保存医院,但这还包括保存医院的部门以及这些部门中的医生,因此.txt文件将如下所示:

因此,医院有一个Map<String, Department>而一个部门有一个Map<Integer, Doctor>

医院1

-部门1

-医生1

-医生2

-部门2

哪个Hospital1会写出它的参数,例如HospitalName-200-100 ,并且在该医院以下的每个部门中都与Dpts和Docs相同。

为此,我已经实现了这些方法来写入/读取文件。 但是我真的不知道如何实现对对象的读取和存储。

我可能不够清楚,但我真的不知道该如何用语言解释。 读取我在txt文件中拥有的内容时会遇到问题,因为以某种方式编写它非常容易。 所以我想,如果我能逐行阅读它会解决问题吗? 我真的不知道,有点在这里迷路了。

//WRITE
public void escriureText(String linia)
{        
    try (BufferedWriter bw = new BufferedWriter(new FileWriter(f,true)))
    {
        bw.write(linia);
        bw.write("\r\n");
        bw.close();
    }
    catch (Exception e) 
    {
        throw new IllegalArgumentException(e);
    }
}


//READ
public String llegirText()
{
    String linia = "";
    String line = "";
    try (BufferedReader reader = new BufferedReader(new FileReader(f)))
    {
        while ((line = reader.readLine()) != null) 
        {
            linia = linia + line + "\n";
        }
    }
    catch (Exception e) 
    {
        throw new IllegalArgumentException(e);
    }
    return linia;
}

一种解决方案是使用xml格式。 然后该文件看起来像这样。

<Hospital>
   <Department>
      <Doctor>
      </Doctor>
      <Doctor>
      </Doctor>
   </Department>
   <Department>
      <Doctor>
      </Doctor>
      <Doctor>
      </Doctor>
   </Department>
   <Department>
      <Doctor>
      </Doctor>
      <Doctor>
      </Doctor>
   </Department>
</Hospital>

要保存xml格式,您可以使用http://www.w3.org/2003/01/dom2-javadoc/org/w3c/dom/Document.html

您可以在此处找到使用xml的代码示例。 http://www.mkyong.com/java/how-to-create-xml-file-in-java-dom/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM