Хранение данных ArrayList и преобразование в строку [] [] - PullRequest
0 голосов
/ 08 августа 2011

Я думаю, что у меня правильный код для хранения данных в ArrayList.Тем не менее, я не могу преобразовать список в строку [] [].Вот мой код:

        int row = 0;
        int col = 0;

        String fileInput = JOptionPane.showInputDialog(null, 
                "Please enter the path of the CSV file to read:");

        File file = new File(fileInput);

        BufferedReader bufRdr;
        bufRdr = new BufferedReader(new FileReader(file));
        String line = null;

        // Construct a new empty ArrayList for type String
        ArrayList<String[]> al = new ArrayList<String[]>();

        //read each line of text file
        while((line = bufRdr.readLine()) != null) {
            String[] columnData = line.split(",");
            al.add(columnData);
        }

        // Convert ArrayList to String array
        String[][] numbers = (String[][]) al.toArray(new String[al.size()][16]);

Я получаю сообщение о том, что не могу преобразовать в тип String [] [].Любые идеи о том, что я могу сделать?

РЕДАКТИРОВАТЬ: Таким образом, проблема преобразования решена (отредактированный код вставлен выше) - теперь его вывод ничего не выводит.Я чувствую, что, должно быть, неправильно сохранил данные.Что я должен добавить / изменить?

1 Ответ

2 голосов
/ 08 августа 2011

Массив будет Object[] из String[], поэтому приведение не работает.Вы можете (и должны) использовать версию toArray(), которая предоставляет массив для заполнения:

String[][] numbers = (String[][]) al.toArray(new String[al.size()][]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...