Написать в файл .txt в Java - PullRequest
0 голосов
/ 11 ноября 2018

Я хочу написать в файл .txt, и я пытаюсь это:

save_arq.print("%s;%d:%f;", entry.getValue(), entry.getKey(), result);

Я инициализирую файл следующим образом:

Scanner file_tf_idf = new Scanner(System.in);
FileWriter arq = new FileWriter("C:\\tf_idf.txt");
PrintWriter save_arq = new PrintWriter(arq);

Но у меня ошибка в save_arq.print.

Мой полный код:

public class tfidfWeights {

public Map<String, Integer> tfidf(Map<String, Integer> tf_C) throws IOException{

        Scanner file_tf_idf = new Scanner(System.in);
        FileWriter arq = new FileWriter("C:\\tf_idf.txt");
        PrintWriter save_arq = new PrintWriter(arq);          

        Map<String, Integer> idf = new HashMap<String, Integer>();


        //Set<Integer> doc_id = new HashSet<Integer>(tf_C.keySet());
        Set<Entry<String, Integer>> set = tf_C.entrySet();
        Iterator it = set.iterator();

        Integer N_total = tf_C.size();

        while(it.hasNext()){
            //iterar o map
            Entry<String, Integer> entry = (Entry)it.next();

            double result = 0;
            result = Math.log10(N_total/entry.getValue());
            save_arq.print("%s;%d:%f;", entry.getValue(), entry.getKey(), result);
            System.out.print(result);
        }
        save_arq.close();
    }
}

1 Ответ

0 голосов
/ 11 ноября 2018

В классе PrintWriter нет метода print, который бы принимал эти аргументы. Я предполагаю, что вы хотели использовать метод printf(), который принимает:

printf(String format, Object... args)

Итак, ваш код будет:

save_arq.printf("%s;%d:%f;", entry.getValue(), entry.getKey(), result);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...