簡體   English   中英

使用相同的多個鍵讀取.txt(屬性)文件-Java

[英]read .txt (properties) file with same multiple keys - java

用簡單的Java術語,不使用任何其他庫(Apache),我如何閱讀以下內容:

data.txt
    CheckUpdate:  110
    CheckTechNotes:  11
    CheckUpdate:  220
    CheckTechNotes:  21
    CheckUpdate:  330
    CheckTechNotes:  31

用於以下代碼:

public class PropertiesFile {
    public static void main(String[] args) {
        Properties prop = new Properties();
        InputStream input = null;

        try {
            input = new FileInputStream("data.txt");
            prop.load(input);
            Enumeration<?> e = prop.propertyNames();

            while (e.hasMoreElements()) {
                System.out.println(prop.getProperty("CheckUpdate"));
            }
        } catch (IOException ex) {
            ex.printStackTrace();
        } finally {
            if (input != null) {
                try {
                    input.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }
}

總是返回330,我如何獲得110、220和330的值?

注意:這就像在文件中包含3個員工詳細信息,我該如何讀取這3個員工對象?

請提出建議。

謝謝

屬性文件包含一組鍵值對,因此具有重復的鍵沒有意義。 調用propertyName()只會給您唯一的鍵。 只需使用普通的FileInputStream打開文件,然后瀏覽您的條目即可。

您可以在讀取List<String>時添加這些屬性,然后以myList.add(prop.getProperty("CheckUpdate"));訪問它們myList.add(prop.getProperty("CheckUpdate"));

您可能希望使用諸如JSON之類的結構化文件格式,而不是針對此類數據使用諸如屬性之類的平面文件格式。 有許多實用程序庫可用於反序列化數據,例如gson。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM