Я хочу прочитать и написать файл Excel из Java с 3 столбцами и N строками, печатая по одной строке в каждой ячейке. Кто-нибудь может дать мне простой фрагмент кода для этого? Нужно ли мне использовать какую-либо внешнюю библиотеку или в Java есть встроенная поддержка?
Я хочу сделать следующее:
for(i=0; i <rows; i++)
//read [i,col1] ,[i,col2], [i,col3]
for(i=0; i<rows; i++)
//write [i,col1], [i,col2], [i,col3]
ExcelCell.getValue()
каждую. Например, посмотрите этот пример чтения , также для записи вы можете проверить этот пример.Ответы:
Попробуйте Apache POI HSSF . Вот пример того, как читать файл Excel:
На странице документации у вас также есть примеры того, как писать в файлы Excel.
источник
HSSFSheet
«sgetPhysicalNumberOfRows()
метод , казалось, возвращает количество непустых строк (это не для меня было очевидно , что это то , что„физическое“имел в виду). Таким образом, если в вашем файле Excel много пустых строк (например, по причинам форматирования), вам, возможно, повезет большеrows = sheet.getLastRowNum();
. Это также должно означать, что вы можете удалить трюк (см. Комментарий) из первого цикла:for(int i = 0; i <= rows; i++) {
(обратите внимание на изменение с<
на<=
).Apache POI может сделать это для вас. В частности, модуль HSSF . Краткое руководство является наиболее полезным. Вот как сделать то, что вы хотите - специально создать лист и выписать его.
источник
Сначала добавьте все эти файлы JAR в путь к классу вашего проекта:
Код для записи в файл Excel:
Код для чтения из файла Excel
источник
Вы также можете рассмотреть JExcelApi . Я считаю, что это лучше, чем POI. Там в учебник здесь .
источник
Появился новый простой и очень крутой инструмент (от 10 до Kfir): xcelite
Напишите:
Читать:
источник
Для чтения файла xlsx мы можем использовать библиотеки Apache POI. Попробуйте это:
источник
.csv или POI, безусловно, сделают это, но вы должны знать о JExcel Энди Хана . Я думаю, что это лучшая библиотека Java для работы с Excel.
источник
и убедитесь, что добавили jars poi и poi-ooxml (org.apache.poi) в ваш проект
источник
Простого файла CSV должно быть достаточно
источник
Для чтения данных из книг .xlsx нам нужно использовать классы XSSFworkbook.
XSSFWorkbook xlsxBook = new XSSFWorkbook(fis);
XSSFSheet sheet = xlsxBook.getSheetAt(0);
и т.п.Нам нужно использовать Apache-poi 3.9 @ http://poi.apache.org/
Для подробной информации с примером посетите: http://java-recent.blogspot.in
источник
Конечно, вы найдете приведенный ниже код полезным и легким для чтения и записи. Это
util
класс, который вы можете использовать в своем основном методе, и тогда вы можете использовать все методы, указанные ниже.источник
используя Spring Apache Poi РЕПО
источник
Я отредактировал наиболее проголосовавшего, потому что он не считал пустые столбцы или строки не полностью, поэтому вот мой код, который я протестировал и теперь могу получить любую ячейку в любой части файла Excel. Также теперь вы можете иметь пустые столбцы между заполненными столбцами, и он будет читать их
источник
Если номер столбца меняется, вы можете использовать это
Соответствующую mavendependency можно найти здесь
источник
Вам нужна библиотека Apache POI, и этот код должен помочь вам
источник
Другой способ чтения / записи файлов Excel - использовать Windmill . Он обеспечивает свободный API для обработки файлов Excel и CSV.
Импорт данных
Экспорт данных
источник
Вы не можете читать и записывать один и тот же файл параллельно ( блокировка чтения-записи ). Но мы можем выполнять параллельные операции с временными данными (т. Е. Потоком ввода / вывода). Запишите данные в файл только после закрытия входного потока. Следующие шаги должны быть выполнены.
Apache POI - чтение / запись того же примера Excel
источник
Пожалуйста, используйте Apache POI libs и попробуйте это.
источник
При использовании apache poi 4.1.2. Тип ячейки немного меняется. Ниже приведен пример
источник
Если вам нужно сделать что-то еще с офисными документами на Java, используйте POI, как уже упоминалось.
Для простого чтения / записи документа Excel, как вы просили, вы можете использовать формат CSV (также как уже упоминалось):
источник
Это запишет JTable в отдельный файл с вкладками, который можно легко импортировать в Excel. Это работает.
Если вы сохраните лист Excel в виде XML-документа, вы также можете создать XML-файл для EXCEL с кодом. Я сделал это с помощью слова, чтобы вам не приходилось использовать сторонние пакеты.
Это может привести к удалению JTable, а затем просто написать вкладку, разделенную на любой текстовый файл, и затем импортировать в Excel. Надеюсь, это поможет.
Код:
источник