uniapp 安卓原生Excel读写插件 支持U盘读写、数据库读写、读写监听进度等功能

excelToDataModule安卓原生Excel读写插件调用文档

概述

excelToDataModule是一个用于处理 Excel 文件与 Android 存储操作的原生插件模块,提供了读取 SD 卡(USB存储设备)路径、列出 Excel 文件、读取 Excel 数据、写入 Excel 文件等功能。

演示视频

uniapp excel读写插件演示视频

导入插件

javascript 复制代码
const excelPlugin = uni.requireNativePlugin('excelToDataModule');

方法列表

1. checkStoragePermission

检查或申请存储权限

参数
  • callback: 回调函数,返回权限检查结果
示例
javascript 复制代码
excelPlugin.checkStoragePermission((ret) => {
    console.log(JSON.stringify(ret));
});

2. getSdCardPaths

获取所有可用的 SD 卡路径

参数
  • callback: 回调函数,返回 SD 卡路径数组
示例
javascript 复制代码
excelPlugin.getSdCardPaths((ret) => {
    console.log(JSON.stringify(ret));
});

3. listExcelFilesInSdCard

列出指定 SD 卡路径下的所有 Excel 文件

参数
  • sdCardPath: SD 卡根路径(字符串)
  • callback: 回调函数,返回 Excel 文件路径列表
示例
javascript 复制代码
excelPlugin.listExcelFilesInSdCard('/storage/XXXX-XXXX', (ret) => {
    console.log(JSON.stringify(ret));
});

4. readExcelFile

异步读取本地 Excel 文件内容

参数
  • excelFilePath: Excel 文件绝对路径(字符串)
  • callback: 回调函数,分批次返回解析的数据行
示例
javascript 复制代码
excelPlugin.readExcelFile('/sdcard/test.xls', (ret) => {
    console.log(JSON.stringify(ret));
});

5. readExcelFileByUri

通过 SAF Uri 异步读取 Excel 文件内容

参数
  • uriStr: 文件的 content URI 字符串
  • callback: 回调函数,分批次返回解析的数据行

6. readExcelAndInsertIntoDatabase

将 Excel 文件内容插入 SQLite 数据库

参数
  • dbPath: 数据库存放路径(字符串)
  • dbName: 数据库名称(字符串)
  • tableName: 表名(字符串)
  • columnMapping: 列映射关系(Map<Integer, String>)
  • excelFilePath: Excel 文件路径(字符串)
  • callback: 回调函数,返回操作结果
示例
javascript 复制代码
const mapping = {};
mapping[0] = 'name';
mapping[1] = 'age';

excelPlugin.readExcelAndInsertIntoDatabase(
    '/sdcard/database',
    'test.db',
    'users',
    mapping,
    '/sdcard/data.xlsx',
    (ret) => {
        console.log(JSON.stringify(ret));
    }
);

7. writeExcelFile

写入数据到指定路径的 Excel 文件

参数
  • sdCardPath: SD 卡根路径(字符串)
  • fileName: 输出文件名(需以 .xls 结尾)
  • headers: 表头数据(二维数组)
  • dataRows: 数据行(二维数组)
  • callback: 回调函数,返回写入结果
示例
javascript 复制代码
const headers = [['姓名', '年龄']];
const rows = [['张三', 25], ['李四', 30]];

excelPlugin.writeExcelFile(
    '/storage/XXXX-XXXX',
    'output.xls',
    headers,
    rows,
    (ret) => {
        console.log(JSON.stringify(ret));
    }
);

8. initSdCardListener

初始化 SD 卡插拔事件监听器

参数
  • callback: 回调函数,当 SD 卡状态变化时触发
示例
javascript 复制代码
excelPlugin.initSdCardListener((ret) => {
    console.log(JSON.stringify(ret));
});

9. destroySdCardListener

销毁 SD 卡插拔事件监听器

参数
  • callback: 回调函数,返回销毁结果
示例
javascript 复制代码
excelPlugin.destroySdCardListener((ret) => {
    console.log(JSON.stringify(ret));
});

10. setSdCardBroadcastCallback

设置 SD 卡广播接收回调

参数
  • callback: 广播回调函数,在 SD 卡状态改变时被调用
示例
javascript 复制代码
excelPlugin.setSdCardBroadcastCallback((ret) => {
    console.log(JSON.stringify(ret));
});
相关推荐
alexhilton11 小时前
Room Fts4:全文搜索替代 SQL LIKE
android·kotlin·android jetpack
hai_android16 小时前
把 Android App 打包成系统应用(System App)
android·kotlin·android jetpack
JMchen17 小时前
【Jetpack 内核实战 01】开篇:Jetpack 组件全家桶核心逻辑与专栏完整规划
android·kotlin·android jetpack
骑着蜗牛撵大象32718 小时前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
hunterandroid19 小时前
Retrofit 网络请求的异常处理与重试策略实战
android
sejinan19 小时前
极致轻量与秒级起播:NativeWasmTv 开源硬核技术解析与升级版体验
android·开源·webview·tv
小羊没烦恼!19 小时前
Ajax与JSON的一些总结
android·java·前端·数据库·mysql·算法·okhttp
mmsx20 小时前
Android 静默失败实录:五个没有日志的线上事故
android·kotlin
hai_android21 小时前
从零实现一个支持跨进程(IPC)的自定义 Toast
android·kotlin·android jetpack
龙腾-虎跃21 小时前
基于 SIP 协议的自研电话终端:FreeSWITCH 语音与视频通信实战
android·音视频·freeswitch·sip协议终端·wertc