Запись символов вместо чисел в файл Java

183
09 сентября 2021, 21:50

Программа смотрит в файл input.txt считывает три числа и высчитывает по формуле четвертое число. Потом должна записать это число в файл output.txt но вместо этого пишет совершенно другое. Когда переменная s имела значение 44 она записывала запятую, при этом на консоли выводилось положенное 44, когда имела значение 100 записывала букву d. В чем может быть проблема и как её исправить?

package com.company;
import java.io.File;
import java.io.FileWriter;
import java.util.Scanner;
public class Main {
    public static void main(String[] args) throws Exception {
        Scanner scanner = new Scanner(new File("input.txt"), "UTF-8");
        int n = scanner.nextInt();
        int m = scanner.nextInt();
        int k = scanner.nextInt();
        int s = (m/(k+2)*2);
        System.out.print(s);
        FileWriter writer = new FileWriter("output.txt");
        writer.write(s);
        writer.close();
    }
}
Answer 1

Попробуйте со стримами

import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.stream.Collectors;
public class Main {
    public static void main(String[] args) throws Exception {
        Files.write(Paths.get("output.txt"), 
                Files.lines(Paths.get("input.txt")).map((words) -> {
                    final String[] ints = words.split(" ");
                    return String.valueOf(Integer.valueOf(ints[1]) / (Integer.valueOf(ints[2]) + 2) * 2);
                }).collect(Collectors.joining("\r\n")).getBytes());
    }
}
READ ALSO
Android.content.res.Resources$NotFoundException

Android.content.res.Resources$NotFoundException

После переименования пакета перестал работать R файлНа строчке Resources

117
Из-за чего возникает переполнение?

Из-за чего возникает переполнение?

Программа для нахождения слов с заданными окончаниями

99
Jquery animate scrollTop не рабоатет

Jquery animate scrollTop не рабоатет

Любой другой код работаетЯ удалил все скрипты полностью, оставил только этот - не работает

165
Как достучаться до значение в массиве?

Как достучаться до значение в массиве?

Как можно заменить знаки вопроса? Достучаться до элементов если не знаешь имя

128