Программа запускается с одним параметром — именем файла, который содержит английский текст. Посчитать частоту встречания каждого символа. Отсортировать результат по возрастанию кода ASCII (почитать в инете). Пример: ‘,’=44, ‘s’=115, ‘t’=116. Вывести на консоль отсортированный результат: [символ1] частота1 [символ2] частота2 Закрыть потоки. Пример вывода: , 19 - 7 f 361 Требования: 1. Считывать с консоли ничего не нужно. 2. Создай поток для чтения из файла, который приходит первым параметром в main. 3. В файле необходимо посчитать частоту встречания каждого символа и вывести результат. 4. Выведенный в консоль результат должен быть отсортирован по возрастанию кода ASCII. 5. Поток для чтения из файла должен быть закрыт. Не выполнены все пункты кроме первого
package com.javarush.task.task18.task1821;

/*
Встречаемость символов
*/

import java.io.FileInputStream;

public class Solution {
    public static void main(String[] args) throws Exception {
        FileInputStream file = new FileInputStream(args[0]);
        byte[] buffer = new byte[file.available()];
        while(file.available() > 0)
            file.read(buffer, 0, Math.min(64000, buffer.length) );
        file.close(); file = null;
        long cnt[] = new long[256];

        for (byte b : buffer)
            cnt[b]++;
        buffer = null;
        for (byte c = 0; c < 256; c++)
            if(cnt[c] > 0)
                System.out.println((char) c + cnt[c]);
    }
}