2017-01-25 11 views
0

Мне нужно сделать файл с едой. Если я хочу добавить элемент в файл в качестве аргумента, используя Formatter.format(), затмение говоря мнеКак написать аргумент в файл.

Формат метод (String, Object []) в типе Formatter не применяется для аргументов (String, String, int, int)

Что такое решение моей проблемы? Каков наилучший способ сохранить данные в файле в качестве аргумента?

Вот код:

package program_skuska; 

import java.util.Formatter; 

public class Food { 
    private int protein; 
    private int carbohyd; 
    private String name; 
    private Formatter x; 

    public void create_foodDatabaze(){ 
     try{ 
      x = new Formatter("food_databaze.txt"); 
     }catch(Exception e){ 
      System.out.println("It is a error"); 
     } 
    } 

    public void food_add(String name, int carbohyd, int protein){ 
     this.name = name; 
     this.carbohyd = carbohyd; 
     this.protein = protein; 

     x.format("%s %s %s", name, carbohyd, protein); 
    } 
} 
+0

Это должно быть 'формат (String, Object ...)', 'не формат (String, Object [])'. Это странная ошибка, так как я скопировал ваш код, и я не получил ту же ошибку. Рассмотрите возможность обновления Eclipse. Вы также можете проверить свой jdk. – SlumpA

+0

После изменения код jdk в порядке. Благодарю. – ShowMeYourCode

ответ

0

Вы можете использовать "% D" в методе формата для целого числа. Ординалы используются после начального символа "%", начиная с 1.

x.format("%s %1d %2d", name, carbohyd, protein);