Чтение и работа с текстовым файлом

205
07 сентября 2017, 16:50
Дан файл с примерным содержанием:
1 кг
2 кг
1 тонна
3 центнера
На экран должно выводиться 1 кг = 1000г
2 кг = 2000г
1 тонна = 1000000г
и так далее.
Получить цифры из файла у меня получилось. А вот дальше загвоздка. Понятия не имею как вывести конвертированные значения в соответствующем формате. Может быть кто-то подскажет?
Пока что у меня есть это: 
    > public static void main(String[] args) throws FileNotFoundException {
    >         String s = "";
    >         Scanner sc = new Scanner(new File("C:\\users\\ProblemSet.txt"));
    >         while (sc.hasNext()) {
    >             s = sc.nextLine() + "\r\n";
    >             String a = s.toString();
    > 
    >             String[] str = (s.replaceAll("\\D+", " ").trim()).split(" ");
    >             int[] intarr = new int[str.length];
    >             for (int i = 0; i < str.length; i++) {
    >                 intarr[i] = Integer.valueOf(str[i]);
    >                 System.out.println(intarr[i]);
    >             }
    > 
    >         }
    >         }
    >         public void Convertion(){
    >         double mph;
    >         double kmh;
    >         double kn;
    > 
    >         }
Answer 1

Ну как вариант задай словарь в проге со значениями

"кг" -> 1000

"т" -> 1000000

"мг" -> 0,001 ...

и в процессе парсинга по словарю принимай решения:

Map<String, Double> convert = new HashMap<String, Double>();
convert.put("кг", 1000.0);
convert.put("т", 1000000.0);
convert.put("ц", 100000.0);
convert.put("мг", 0.0001);
String formFile = "2 кг";
int num = Integer.parseInt(formFile.split(" ")[0]);
String name = formFile.split(" ")[1];
if (convert.keySet().contains(name))
    System.out.println(num * convert.get(name) + "г");

Как то так можно. Оберни это в функцию и вызывай ее при выводе на экран.

READ ALSO
Обновление Gui в JavaApplet

Обновление Gui в JavaApplet

Здравствуйте,стоит задача реализовать java Applet c поддержкой чтения NFC и дальнейшей передачи параметров считанной смарт карты на сервер(Json)Проблема...

275
Кнопки у телеграм-бота

Кнопки у телеграм-бота

Всем привет! Начал понемногу осваивать ботов в телеграмеЗнаю немного Java

490
В каком случае НЕ возникает исключение? [требует правки]

В каком случае НЕ возникает исключение? [требует правки]

В каком случае НЕ возникает исключение?

349