Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.11.2017, 14:25   #1
progjar
Пользователь
 
Регистрация: 26.05.2016
Сообщений: 32
По умолчанию Чтение Excel в JTable

Написал код для чтения Excel файла, файл читается в консоль, но в JTable не выводится, что не так сделано ?

Код:
 InputStream in = null;
        try {
            in = new FileInputStream("C:\\Users\\Admin\\Desktop\\f.xlsx");
            HSSFWorkbook wb = new HSSFWorkbook(in);
            HSSFSheet sheet = wb.getSheetAt(0); 
            DefaultTableModel md = (DefaultTableModel)jTable1.getModel();
    
            Iterator<Row> it = sheet.iterator();
            while (it.hasNext()) {
                Row row = it.next();
                Iterator<Cell> cells = row.iterator();
                while (cells.hasNext()) {
                    Cell cell = cells.next();
                    switch (cell.getCellType()) {
                        case Cell.CELL_TYPE_NUMERIC:
                            System.out.printf ("% 0f", cell.getNumericCellValue());
                            break;
                        case Cell.CELL_TYPE_STRING:
                            System.out.print (cell.getStringCellValue() +"\t\t");
                            break;
                    } 
                }
                jTable1.setModel(md);
             md.addColumn("Логин");
             md.addColumn("Пароль");
             md.addColumn("Ссылка на сайт");
                System.out.println(md);
            }
        } catch (FileNotFoundException ex) {
            Logger.getLogger(Frame2.class.getName()).log(Level.SEVERE, null, ex);
        } catch (IOException ex) {
            Logger.getLogger(Frame2.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            try {
                in.close();
            } catch (IOException ex) {
                Logger.getLogger(Frame2.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
progjar вне форума Ответить с цитированием
Старый 06.11.2017, 14:30   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

А где вы что-нибудь пишете в JTable?
p51x вне форума Ответить с цитированием
Старый 06.11.2017, 14:34   #3
progjar
Пользователь
 
Регистрация: 26.05.2016
Сообщений: 32
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
А где вы что-нибудь пишете в JTable?
Разве не это ?

System.out.println(md);
progjar вне форума Ответить с цитированием
Старый 06.11.2017, 15:54   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Нет. Идите учить основы. out - это стандартный поток вывода (обычно, консоль экрана), println - это его метод по выводу данных. Это никак не связано ни с JTable, ни с записью данных в модель.
p51x вне форума Ответить с цитированием
Старый 07.11.2017, 14:56   #5
progjar
Пользователь
 
Регистрация: 26.05.2016
Сообщений: 32
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Это никак не связано ни с JTable, ни с записью данных в модель.
Так я не понял, сам алгоритм чтения Excel правильно написан и надо только дописать код для записи в JTable или полностью переписывать все ?
progjar вне форума Ответить с цитированием
Старый 07.11.2017, 15:14   #6
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Ну как он может быть правильно написан, если только выводит данные в консоль? В модель кто записывать будет?
p51x вне форума Ответить с цитированием
Старый 07.11.2017, 16:24   #7
progjar
Пользователь
 
Регистрация: 26.05.2016
Сообщений: 32
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
В модель кто записывать будет?
Ну то есть мне весь код в целом надо переписать, как я понял
progjar вне форума Ответить с цитированием
Старый 07.11.2017, 16:31   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Вам надо заменить вывод значения в консоль на вставку его в модель для JTable. Конечно, если хотите можете переписать.
p51x вне форума Ответить с цитированием
Старый 07.11.2017, 16:32   #9
progjar
Пользователь
 
Регистрация: 26.05.2016
Сообщений: 32
По умолчанию

Цитата:
Сообщение от p51x Посмотреть сообщение
Вам надо заменить вывод значения в консоль на вставку его в модель для JTable.
Ну вот это я и хотел уточнить, что сам код чтения правильный

Код:
 Iterator<Row> it = sheet.iterator();
            while (it.hasNext()) {
                Row row = it.next();
                Iterator<Cell> cells = row.iterator();
                while (cells.hasNext()) {
                    Cell cell = cells.next();
                    switch (cell.getCellType()) {
                        case Cell.CELL_TYPE_NUMERIC:
                            System.out.printf ("% 0f", cell.getNumericCellValue());
                            break;
                        case Cell.CELL_TYPE_STRING:
                            System.out.print (cell.getStringCellValue() +"\t\t");
                            break;
                    } 
                }
progjar вне форума Ответить с цитированием
Старый 07.11.2017, 16:35   #10
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,695
По умолчанию

Оно ж вам значения в консоль выводит... Вы не смогли сравнить то, что есть в excel и что вывело?
p51x вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись в Excel из JTable progjar Общие вопросы по Java, Java SE, Kotlin 0 22.10.2017 16:40
Чтение Excel файлов в Lazarus AndrzejX Lazarus, Free Pascal, CodeTyphon 30 22.11.2015 11:39
Чтение Excel в C# trish145 C# (си шарп) 1 03.06.2015 09:26
Чтение и запись больших excel файлов на c# Bi0max C# (си шарп) 0 21.08.2012 20:33
Быстрое чтение из Excel ProESM Общие вопросы Delphi 5 17.12.2011 21:12