【问题标题】:Read/Write objects and lists to file读/写对象和列表到文件
【发布时间】:2014-12-12 15:10:26
【问题描述】:

我想从.txt 文件中写入/读取我的对象的属性。我的主要困难是我的对象有一个Map<String, Object>,我也想写它。我会尝试用例子来解释它:

我有一家医院,里面有科室,每个科室都有医生。我希望能够拯救医院,但这也包括拯救它的科室和那些科室的医生,所以.txt 文件将是这样的:

所以医院有一个Map<String, Department>,一个部门有一个Map<Integer, Doctor>

医院1

-部门1

--医生1

--Doctors2

-部门2

Which 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;
}

【问题讨论】:

标签: java file


【解决方案1】:

一种解决方案是使用 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/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-12
    • 2014-09-25
    • 1970-01-01
    • 1970-01-01
    • 2011-12-14
    • 2013-06-22
    • 1970-01-01
    • 2023-03-23
    相关资源
    最近更新 更多