Как поместить строки файла в массив массивов?

315
03 ноября 2017, 09:07

Есть txt файл в котором около 1000 строк. Нужно поместить эти строки в массив массивов по 12 элементов, в последнем массиве соотвественно будет не это число, а остаток. Как это можно осуществить?

Answer 1
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class ReadToArray {
    private  static final String FILE_NAME = "1.txt"; // путь к файлу и имя файла
    private  static final String CHARSET = "WINDOWS-1251"; // или UTF-8 или любая другая кодировка
    private static final int INNER_ARRAY_LENGTH = 12;
    public static void main(String[] args) {
        List<String> resultList = readTextFile(FILE_NAME, CHARSET);
        String[][] resultArray = new String[resultList.size()/INNER_ARRAY_LENGTH+1][INNER_ARRAY_LENGTH];
        int count1 = 0;
        int count2 = 0;
        for (String string : resultList) {
            resultArray[count2][count1] = string;
            count1++;
            if (count1==INNER_ARRAY_LENGTH) {
                count1 = 0;
                count2++;
            }
        }
        // и теперь выводим в консоль результат
        for (int i = 0; i < resultArray.length; i++) {
            for (int j = 0; j < resultArray[i].length; j++) {
                System.out.println("["+i+"]"+"["+j+"]" + resultArray[i][j]);
            }
        }
    }
    private static List<String> readTextFile(String fileName, String charset) {
        List<String> list = new ArrayList<>();
        try (BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(fileName), charset))) {
            String strLine;
            while ((strLine = br.readLine()) != null) {
                list.add(strLine);
            }
        } catch (IOException e) {
        }
        return list;
    }
}
READ ALSO
Вставка по уникальному ключу

Вставка по уникальному ключу

Есть сущность с id и каким-то другим уникальным ключом (extId)Множество потоков (приложений) вставляют в БД сущности с незаполненным id, но известным...

225
Список папок и файлов в Assets

Список папок и файлов в Assets

Каким образом я могу получить названия папок в assets, а также список файлов в каждой из этих папок?

234
Как задать иконку для Cluster Markers

Как задать иконку для Cluster Markers

Есть много маркеровДобавляются через класстер

287
Clean Architecture android

Clean Architecture android

Начал в своем MVP юзать интерактор) При этом Rx я не использовал) В Interactor`е я инжектил ретрофит и отправлял запрос)

234