android JXL 導出Excel(.xls/xlsx)

前面使用過 POI 導出xlsx但是它體量比較大,功能較豐富,在一些對包size比較敏感并且導出需求相對簡單的項目中就不太適合。

poi鏈接:Android 導入導出excel xls、xlsx_android excel導入導出-CSDN博客

jxl 包體積小,使用簡單、API 直觀。

1.導入依賴

    implementation("net.sourceforge.jexcelapi:jxl:2.6.12")

2.導出方式,可根據自身需求修改

 public static boolean exportExcel(Context context, List<Contact> contactList) {try {File dir = context.getExternalFilesDir(null);File file = new File(dir, "聯系人.xlsx");if (file.exists()) {file.delete();}WritableWorkbook workbook = Workbook.createWorkbook(file);WritableSheet sheet = workbook.createSheet("聯系人", 0);// 設置列寬(單位:字符數) 可根據實際情況調整sheet.setColumnView(0, 10); // 姓名sheet.setColumnView(1, 20); // 組織sheet.setColumnView(2, 15); // 個人電話sheet.setColumnView(3, 15); // 家庭電話sheet.setColumnView(4, 15); // 工作電話sheet.setColumnView(5, 30); // 郵箱sheet.setColumnView(6, 40); // 備注// 寫入表頭sheet.addCell(new Label(0, 0, "姓名"));sheet.addCell(new Label(1, 0, "組織"));sheet.addCell(new Label(2, 0, "個人電話"));sheet.addCell(new Label(3, 0, "家庭電話"));sheet.addCell(new Label(4, 0, "工作電話"));sheet.addCell(new Label(5, 0, "郵箱"));sheet.addCell(new Label(6, 0, "備注"));// 寫入數據for (int i = 0; i < contactList.size(); i++) {Contact c = contactList.get(i);sheet.addCell(new Label(0, i + 1, c.getName()));sheet.addCell(new Label(1, i + 1, c.getOrg()));sheet.addCell(new Label(2, i + 1, c.getPhone()));sheet.addCell(new Label(3, i + 1, c.getHomePhone()));sheet.addCell(new Label(4, i + 1, c.getWorkPhone()));sheet.addCell(new Label(5, i + 1, c.getEmail()));sheet.addCell(new Label(6, i + 1, c.getNote()));}workbook.write();workbook.close();Log.d("導出文件", "導出成功  path:" + file.getPath());return true;} catch (Exception e) {e.printStackTrace();}return false;}public static class Contact {private String Name;private String phone;private String email;private String org;private String note;private String homePhone;private String workPhone;get set 省略}

3.使用

 new Thread(new Runnable() {@Overridepublic void run() {List<ExportFile.Contact> contacts = new ArrayList<>();for (int i = 0; i < 10; i++) {ExportFile.Contact contact = new ExportFile.Contact();contact.setName("劉二毛" + i);contact.setPhone("1234567890" + i);contact.setHomePhone("0395-550999" + i);contact.setWorkPhone("0397-999999" + i);contact.setEmail("liuermao666@Gmail.eslssdkj.com");contact.setNote("備注" + i);contact.setOrg("組織結構" + i);contacts.add(contact);}boolean result = ExportFile.exportExcel(ActivityLianXiRen.this, contacts);}}).start();

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/916102.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/916102.shtml
英文地址,請注明出處:http://en.pswp.cn/news/916102.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

mysql 的主從機制是怎么實現的?

MySQL 作為當前最流行的開源關系型數據庫之一&#xff0c;為了滿足數據的高可用、負載均衡和容災備份等需求&#xff0c;廣泛應用主從復制&#xff08;Replication&#xff09;機制。其核心思想是&#xff1a;在一臺主庫&#xff08;Master&#xff09;上發生的所有數據變更都會…

【PHP 函數從入門到精通】

&#x1f9e0; PHP 函數從入門到精通 PHP 函數是編程中最基礎、也是最強大的工具之一。它不僅可以簡化代碼、提高復用性&#xff0c;還能通過各種高級用法&#xff0c;讓你寫出更靈活、更現代的代碼。 下面我們從函數的基礎講起&#xff0c;逐步深入&#xff0c;帶你掌握函數的…

CGA老年綜合評估漢密爾頓抑郁量表與認知評估聯用

一、CGA老年綜合評估漢密爾頓抑郁量表與認知評估聯用的基礎CGA老年綜合評估 &#xff08;一&#xff09;二者評估內容的互補性 CGA老年綜合評估漢密爾頓抑郁量表主要聚焦于老年人的抑郁情緒及相關癥狀&#xff0c;而認知評估則著重考察老年人的記憶力、注意力、思維能力等認知…

教培機構如何開發自己的證件照拍照采集小程序

職業教培機構對學員的證件照采集是進行學生培訓管理、考試報名、證書發放的前置工作&#xff0c;傳統拍照和收集證件照的方式往往面臨效率低、質量參差不齊等問題。開發一款專屬的證件照拍照采集小程序&#xff0c;不僅能提升機構形象&#xff0c;還能大幅優化工作流程。借助“…

GC8872刷式直流電機驅動器詳解:3.6A驅動能力與PWM控制

概述GC8872是一款具有故障報告功能的刷式直流電機驅動芯片&#xff0c;專為打印機、電器、工業設備等機電一體化應用設計。這款芯片采用ESOP8封裝&#xff0c;集成了H橋驅動電路和多種保護功能&#xff0c;支持高達3.6A的峰值電流輸出。關鍵特性寬電壓工作范圍&#xff1a;6.5V…

從0開始學習R語言--Day54--雙重固定模型

對于具有空間差異的數據&#xff0c;如果不知道數據的特征關系或意義&#xff0c;直接用杜賓模型來處理是一個比較通用的思路&#xff0c;只是后續還需要很多檢驗去證明結果的可解釋性和統計性。但如果我們已經知道特征的意義&#xff0c;比如企業經濟發展的數據中有著員工的科…

三生篩法在計算數論中的極限是什么?

AI輔助創作&#xff1a;三生篩法在計算數論中的極限主要體現在?規模邊界?、?算法適應性?及?理論兼容性?三個維度&#xff0c;其核心瓶頸與突破路徑如下&#xff1a;一、規模邊界&#xff1a;計算效率的斷崖式衰減??低維高效區的上限?在 10^15 以內數域&#xff0c;三生…

iOS WebView 加載失敗與緩存刷新問題排查實戰指南

在移動 App 中嵌入網頁后&#xff0c;不少團隊都會遇到一個詭異的問題&#xff1a;用戶看到的是“舊內容”&#xff0c;或“資源加載失敗”&#xff0c;但在瀏覽器調試中一切正常。特別是在 iOS WebView 中&#xff0c;這類緩存和加載問題常常隱匿、難以復現。 這篇文章將通過一…

GoLand 項目從 0 到 1:第二天 —— 數據庫自動化

第二天核心任務&#xff1a;自動化與多數據庫支持第二天的開發聚焦于數據庫自動化流程構建與MongoDB 業務鏈路擴展&#xff0c;通過工具化手段解決數據庫操作的重復性問題&#xff0c;同時完善多數據庫支持能力。經過一天的開發&#xff0c;項目已實現數據庫初始化、遷移、種子…

qt框架,使用webEngine如何調試前端

解決 Qt 5.14.2 中啟用開發者工具的問題問題在于 Qt 5.14.2 中 QWebEngineSettings::DeveloperExtrasEnabled 屬性已被棄用或更改。正確啟用開發者工具的完整方法&#xff08;Qt 5.14.2&#xff09;1. 修改 main.cpp#include <QWebEngineView> #include <QWebEngineSe…

【Atlassian生態】Jira Cloud單站點現可支持10萬用戶:架構升級與龍智云遷移服務

作為Atlassian全球白金合作伙伴&#xff0c;龍智團隊非常激動地宣布&#xff1a;Jira迎來歷史性突破——Jira Cloud單個站點最高可支持10萬用戶&#xff01;覆蓋Enterprise、Premium和Standard版本。現在&#xff0c;更多的團隊可以將Jira作為核心協作中樞&#xff0c;以加速目…

深入解析JVM垃圾回收調優:性能優化實踐指南

深入解析JVM垃圾回收調優&#xff1a;性能優化實踐指南 一、技術背景與應用場景 隨著互聯網業務的飛速發展&#xff0c;Java 應用在高并發、大內存場景下對 JVM 性能提出了更高要求。垃圾回收&#xff08;Garbage Collection&#xff0c;GC&#xff09;作為 JVM 的核心組件之一…

萬字解析Redission ---深入理解Redission上鎖過程

Redisson獲取鎖過程 RLock lock redissonClient.getLock("lock:order" userId); boolean isLock lock.tryLock(1L, TimeUnit.SECONDS);調用tyrLock其實就是下面的方法&#xff0c;如果說沒有指定鎖的過期時間&#xff0c;可以看到這邊設置為了-1Overridepublic bo…

NVM踩坑實錄:配置了npm的阿里云cdn之后,下載nodejs老版本(如:12.18.4)時,報404異常,下載失敗的問題解決

文章目錄一、情景還原二、分析原因三、解決方案一、情景還原 有個老項目&#xff0c;需要用到 node 的 12.18.4 版本。 小case&#xff0c;我裝了 nvm 的&#xff0c;根本構不成挑戰&#xff0c;敲敲命令就可以了&#xff1a; # 安裝12.18.4版本的nodejs nvm install 12.18.…

優秀案例:基于python django的智能家居銷售數據采集和分析系統設計與實現,使用混合推薦算法和LSTM算法情感分析

1 緒論1.1 研究的背景和意義本文所研究設計的智能家居銷售數據采集與分析系統主要是為了提升數據的采集效率&#xff0c;并且實現及時采集到的線上電商平臺及線下店面的多重渠道銷售數據的采集與分析&#xff0c;精確地進行相關的數據采集并應用先進的數據挖掘算法進行分析挖掘…

【傳感器標定(四):多傳感器融合定位系統中的標定與時間同步方案】

1. 系統框架概述 本方案采用"三層標定框架"&#xff0c;整體架構如下圖所示&#xff1a; #mermaid-svg-WhuG9fzKdHSAzSNh {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-WhuG9fzKdHSAzSNh .error-icon{f…

PostgreSQL 跨庫查詢方法

問題描述&#xff1a; PostgreSQL 跨庫查詢方法 select rc.tm,fq,fq_old,sccd,unitcd from resource_calc_scene_section_result as rc inner join "mxpt_yushuiqingsrc_databases"."public".st_river_r_hi as st on st.stcd rc.bscd and st.tm rc.tmwher…

畢業論文參考文檔(免費)—DHT11 溫濕度傳感器的硬件與軟件系統設計

畢業論文參考文檔&#xff08;免費&#xff09;—DHT11 溫濕度傳感器的硬件與軟件系統設計第一章 硬件系統設計 1.1 硬件組成與接口設計 DHT11 采用 4 引腳封裝&#xff08;SOP-4&#xff09;&#xff0c;如圖 1-1 所示。核心硬件由三部分構成&#xff1a;電阻式濕度檢測元件、…

壁紙管理 API 文檔

壁紙管理 API 文檔環境&#xff1a;Python 3.9、Flask 2.x、PyMySQL 1.x 運行&#xff1a;python app.py 監聽&#xff1a;http://0.0.0.0:5000通用響應格式 {"code": 200, // 業務碼&#xff1a;200 成功&#xff0c;201 創建成功&#xff0c;400 參數錯誤&am…

常見問題三

在前端開發中&#xff0c;Vue 的數據響應機制、腳本加載策略以及函數式編程技巧是高頻考點和日常開發的核心基礎。本文將圍繞這幾個關鍵點展開詳細解析&#xff0c;幫助開發者深入理解其原理與應用。一、Vue2 與 Vue3 的數據響應原理對比Vue 的核心特性之一是數據響應式—— 當…