透過Java解析Excel檔案
也是一個工作中遇到的情境,很多單位想讓內部人員利用Excel維護資料(因為維護上比較簡單方便),且想讓這份資料透過網頁呈現給一般網友閱讀,所以整體後端的流程應該是:
- 將維護的Excel透過網頁介面上傳
- 將上傳的Excel轉換成XML
- 網頁去讀取這份XML來呈現
透過以上的三個步驟,就可以完成客戶想要效果。
本範例展示的是讀取Excel的XLS格式(新版Excel為XLSX格式),並轉換成陣列的方法(寫入XML在前面的範例就有了),我們選用讀取Excel的Library是Apache POI,而檔內已經有以下的資料,其中Total是公式欄位,計算Price x Quantity:
ID | Name | Price | Quantity | Total |
100001 | 產品名稱1 | 10 | 5 | 50 |
100002 | 產品名稱2 | 20 | 10 | 200 |
100003 | 產品名稱3 | 30 | 15 | 450 |
以下是讀取的程式範例:
package CDIT.stanley; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import java.util.ArrayList; import java.util.Iterator; import org.apache.poi.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.POIFSFileSystem; public class excelToXMLFullSample { static ArrayList<ArrayList<String>> excelData = new ArrayList<ArrayList<String>>(); public static void main (String[] args) throws FileNotFoundException{ excelData.clear(); String xlsPath = "C:\\Projects\\Javas\\sample.xls"; InputStream inputStream = null; inputStream = new FileInputStream (xlsPath); POIFSFileSystem fileSystem = null; try { fileSystem = new POIFSFileSystem (inputStream); @SuppressWarnings("resource") HSSFWorkbook workBook = new HSSFWorkbook (fileSystem); HSSFSheet sheet = workBook.getSheetAt (0); Iterator<?> rows = sheet.rowIterator (); while (rows.hasNext ()){ HSSFRow row = (HSSFRow) rows.next(); Iterator<?> cells = row.cellIterator (); ArrayList<String> rowData = new ArrayList<String>(); while (cells.hasNext ()){ HSSFCell cell = (HSSFCell) cells.next(); switch (cell.getCellTypeEnum()){ case STRING :{ rowData.add(cell.getStringCellValue()); break; } case NUMERIC : { rowData.add((int)cell.getNumericCellValue() + ""); break; } case FORMULA :{ switch(cell.getCachedFormulaResultTypeEnum()) { case STRING: rowData.add(cell.getStringCellValue ()); break; case NUMERIC: rowData.add((int)cell.getNumericCellValue() + ""); break; default: rowData.add(""); break; } } default: rowData.add(""); break; } } excelData.add(rowData); } } catch(IOException e){ System.out.println("IOException " + e.getMessage()); System.out.println("轉換失敗,請檢查Excel檔案與格式是否正確"); } for(int i=0 ; i<excelData.size(); i++){ System.out.println("Excel Row "+ i +" Data : " + excelData.get(i)); } } }
程式會把Excel內的資料轉換為ArrayList,輸出內容如下:
Excel Row 0 Data : [Product ID, Product Name, Product Price, Quantity, Total] Excel Row 1 Data : [100001, 產品名稱1, 10, 5, 50, ] Excel Row 2 Data : [100002, 產品名稱2, 20, 10, 200, ] Excel Row 3 Data : [100003, 產品名稱3, 30, 15, 450, ]
dark web markets https://cannahome-darkmarket-online.com/ – dark web link
dark web link https://asap-market-onion.com/ – darknet websites
nha cai 88bet 88 bet 188bet 88bet
http://88betviet.pro/# 88 bet
Тут можно преобрести взломостойкий сейф для дома взломостойкие сейфы купить
darknet markets url https://cannahome-darkmarket-online.com/ – darknet market list
tor drug market https://firstdarkmarket.com/ – darknet sites
Модельный ряд BMW: откройте для себя новые возможности, водителей.
Наслаждайтесь отличием моделей BMW, производительностью.
Проверьте последние достижения BMW, включая.
Выбор для любого стиля жизни в модельном ряду BMW, невероятно разнообразен.
Наслаждайтесь качеством и элегантностью BMW, которые создают.
Почему стоит выбрать BMW, с непревзойденным качеством.
Каждая модель BMW — это шедевр, тех, кто стремится к совершенству.
Модельный ряд BMW: от седанов до спортивных, которые стоит рассмотреть.
Как BMW отвечает на вызовы времени, проверьте.
Разнообразие моделей BMW: для каждого, подходящие для городской жизни.
Погрузитесь в технологии BMW, это опыт, который нужно испытать.
Наслаждайтесь комфортом и управляемостью BMW, который суждено испытать.
Переосмысленный комфорт и элегантность BMW, разработанная для.
Модельный ряд BMW, который стоит рассмотреть, от классики до современности.
Давайте исследовать великолепие модельного ряда BMW, с передовыми технологиями.
От автомобилей для города до внедорожников: BMW, с уникальными возможностями.
BMW: воплощение мечты о идеальном автомобиле, для истинных ценителей.
Откройте для себя свою следующую BMW, с надежностью и безопасностью.
Изучите мир BMW с новой перспективы, на любой вкус.
bmw x5 2018 https://model-series-bmw.biz.ua/ .
Тут можно преобрести взломостойкие сейфы для дома сейфы взломостойкие
http://alo789.auction/# alo789 dang nh?p
link vao k8 k8 bet k8
dark market https://kingdomdarkmarketplace.com – dark web sites
Топ онлайн казино 2025: профессиональный анализ лучших игровых платформ
Интернет-гемблинг стремительно развиваются в России, завоевывая всё больше игроков из-за своей доступности. Однако для безопасного времяпрепровождения критически важно выбирать только сертифицированные площадки, которые гарантируют защиту личных данных. В этом материале мы разберём ключевые параметры оценки, выделим лидеров лучших казино 2025 года и предоставим практические инструкции для оптимального выбора.
Ключевые факторы надёжности онлайн-казино
Чтобы минимизировать опасность, необходимо учитывать следующие аспекты:
Лицензионная чистота
Проверяйте наличие регуляторных разрешений: Гибралтара.
Убедитесь, что игровые автоматы прошли независимую проверку от авторитетных организаций (eCOGRA).
Система случайных чисел (RNG)
Казино должно использовать независимый генератор случайных чисел, что обеспечивает честность игры.
Скорость транзакций
Надёжные казино предлагают быстрые выплаты через разнообразные инструменты: банковские карты (MasterCard), электронные кошельки (QIWI) и блокчейн-валюты (Litecoin).
Бонусная политика
Хорошие казино предоставляют щедрые бонусы: приветственные пакеты, фриспины и системы вознаграждений. Обратите внимание на вейджер.
Мобильная оптимизация
Современные казино адаптированы для мобильных устройств (iOS) с удобным управлением. Это позволяет проводить время за играми без ограничений.
Клиентская поддержка
Отзывчивая служба поддержки работает 24/7 и помогает решать вопросы через Telegram.
Рейтинг лучших онлайн-казино 2025 года
1. Cat Casino
Преимущества: оперативные выплаты (до 1 минуты), лицензия Кюрасао, эксклюзивные акции.
Бонусы: начальный подарок — 100 фриспинов в Book of Dead.
Особенности: турниры с крупными призами.
2. Kometa Casino
Преимущества: лучшее live-казино, кэшбэк до 50 000?.
Бонусы: стартовый комплект — 255% + 500 бесплатных вращений.
Особенности: VIP-клуб с эксклюзивными привилегиями.
3. R7 Casino
Преимущества: приватный вход по email, поддержка цифровых активов (BTC) с бесплатными транзакциями.
Бонусы: фриспины за активность в соцсетях.
Особенности: двухфакторная аутентификация для предотвращения взломов.
4. Arkada Casino
Преимущества: быстрые выплаты на карты РФ (Тинькофф), ежедневные конкурсы.
Бонусы: кэшбэк до 15%, приветственная награда.
Особенности: лицензионные игры от Microgaming.
5. Kent Casino
Преимущества: поддержка криптовалют, турниры с призовым фондом впечатляющими наградами.
Бонусы: возможность бесплатной игры.
Особенности: широкий выбор слотов с максимальной отдачей.
Особенности мобильных казино
Мобильные казино становятся востребованными благодаря технологичности. Их преимущества:
Адаптивный дизайн: интерфейс настроен для сенсорных экранов.
Быстрый доступ: нет необходимости устанавливать программы.
Поддержка платежей: можно вести транзакции и получать выигрыши через специальные сервисы.
Низкое потребление трафика: современные казино работают плавно даже на медленном интернете.
Как выбрать лучшее казино?
При выборе онлайн-казино учитывайте следующие факторы:
Лицензия и безопасность
Убедитесь, что казино имеет официальный сертификат и использует защиту информации (SSL).
Ассортимент игр
Лучшие казино предлагают широкий выбор слотов, настольных игр (блэкджек) и живые игры.
Скорость выплат
Изучите отзывы игроков о времени получения денег.
Бонусные программы
Обратите внимание на условия акций, требования по вейджеру и наличие других предложений.
Качество поддержки
Проверьте, насколько профессионально сотрудники решают вопросы.
Мобильная версия
Убедитесь, что казино имеет адаптированную версию для смартфонов.
Заключение
Онлайн-казино могут стать отличным способом развлечения, если подходить к их выбору серьёзно. Придерживайтесь наших подсказок, играйте только на качественных платформах и помните о важности самоконтроля. Азартные игры — это прежде всего развлечение, а не способ заработка.
Если вы ищете проверенную платформу с широким выбором игр, обратите внимание на топовые площадки, такие как Kometa Casino. Они пользуются доверием среди игроков и продолжают радовать своими предложениями.
https://t.me/s/topcasinos_ru
Тут можно преобрести купить сейф москва сейфы москва
onion dark website https://cyberdarkmarkets.com/ – darkmarket url
dark web market urls https://kingdommarketdarknet.com/ – dark web link
onion dark website https://onion-dark-market.shop/ – dark market 2025
darknet market list https://cannahomedarknetdrugstore.com/ – dark market url
https://k8viet.guru/# k8
darknet market https://darkfoxmarketplace.com/ – onion dark website
https://alo789.auction/# dang nh?p alo789
darknet links https://kingdommarketdarknet.com/ – darknet market lists
https://k8viet.guru/# k8 bet
k8vip: k8 th? dam – k8
darknet markets links https://dark-web-versus.com – dark web market
Тут можно преобрести купить сейф москва купить сейф в москве цена
After going over a few of the articles on your site, I really like your technique of blogging. I bookmarked it to my bookmark website list and will be checking back in the near future. Please visit my web site too and let me know what you think.
Get More Information galaxy swapper download
88bet slot: keo nha cai 88bet – keo nha cai 88bet
k8: k8 th? dam – k8