2016-03-02 1 views
-1

Я новичок в Java. Я пытаюсь загрузить все пары ключей и значений в файл в объект Properties и распечатать все пары ключей и значений с помощью метода Properties.list (PrintWriter p). Ниже приведен код, который я придумал.Загрузка пар ключей и значений в файл в объект Properties и распечатка всех пар ключ и значение с помощью метода Properties.list (PrintWriter p)

Однако, когда я запускаю код, IDE ничего не выводит. Почему это происходит? Я делаю что-то неправильно?

Properties p1 = new Properties(); 
InputStream is1 = new FileInputStream("File.txt"); 
p1.load(is1); 
PrintWriter pw1 = new PrintWriter(System.out); 
p1.list(pw1); 
+0

Ваш файл file.txt пуст? –

+0

Что такое путь к файлу File.txt? Тестирование с полным путем текстового файла. – Rahul

+0

Какая версия Java? – fge

ответ

0

Вы можете попробовать реализовать код в поле ниже образом:

  Properties p1 = new Properties(); 
      InputStream is1 = new FileInputStream("File.txt"); 
      p1.load(is1); 
      PrintWriter pw1 = new PrintWriter(System.out); 
      System.out.println("printing property values"); 
      p1.list(pw1); 
      System.out.println(p1.getProperty("1")); 
      System.out.println(p1.getProperty("2")); 

далее добавить больше к вашему коду, если вы хотите распечатать все ключи и значения togehter, вы также можете использовать перечисление в belo w way:

 Properties p1 = new Properties(); 
     InputStream is1 = new FileInputStream("File.txt"); 
     p1.load(is1); 
     PrintWriter pw1 = new PrintWriter(System.out); 
     System.out.println("printing property values"); 
     p1.list(pw1); 
     Enumeration<?> e = p1.propertyNames(); 
     while (e.hasMoreElements()) { 
      String key = (String) e.nextElement(); 
      String value = p1.getProperty(key); 
      System.out.println("Key : " + key + ", Value : " + value); 
     } 

This will get you all the keys and respective values together on the console. 
1

Properties p1 = new Properties(); InputStream is1 = new FileInputStream("File.txt"); p1.load(is1); PrintWriter pw1 = new PrintWriter(System.out); p1.list(pw1); pw1.flush(); pw1.close();

Вам нужно вызвать вровень() на PrintWriter.

0

вы можете также отображать их таким образом:

Properties p1 = new Properties(); 
    InputStream is1 = new FileInputStream("src\\File.txt"); 
    p1.load(is1); 

    for(Object key:p1.keySet()) 
    { 
     System.out.println(key+"="+p1.get(key)); 
    } 

или:

System.out.println(p1.toString());