导入导出

下方 API 需要配套的转换后端。请先按导入导出集成接好文件上传、转换、任务查询和下载,再配置前端插件。快照 API 也需要转换后端,但不要求创建协同文档。

支持的格式

下表列出本页前端 API 支持的格式。Office 文件转换还需要后端支持对应的文档类型和格式。

导入导出
.xls, .xlsx, .csv, .tsv.xlsx, .csv, .tsv

CSV、TSV 每次导出一个工作表,不保留工作簿样式和多个工作表。导出时传入 ExchangeFormat.CSVExchangeFormat.TSVsheetId;默认导出 XLSX。前端 API 不接受 .xlsm,即使转换后端支持该格式也不能直接传入。

Facade API

导入

插件模式提示

仅插件模式需要手动引入 Facade 包。预设模式已内置对应的 Facade 包,无需额外导入。

TypeScript
import '@univerjs-pro/exchange-client/facade'import '@univerjs-pro/sheets-exchange-client/facade'

导入 .xlsx

导入 .xlsx 文件并获取 unitId

注意事项

该方法依赖协同服务:导入后会在服务端创建文档并返回 unitId。如果未启用协同,请使用快照导入。

在启用协同编辑的时候,每个文档都有一个唯一的 unitId。使用 univerAPI.importSheetToUnitIdAsync 传入 file 参数会返回 unitId,可以通过 unitId 来访问文档。 file 参数可以是一个 File 对象,也可以是远程文件的 URL。

TypeScript
import '@univerjs-pro/collaboration-client/facade'const unitId = await univerAPI.importSheetToUnitIdAsync(file)if (unitId) {  await univerAPI.getCollaboration().loadSheetAsync(unitId)}

导入 .xlsx 文件并获取 IWorkbookData

使用 univerAPI.importSheetToSnapshotAsync 导入 .xlsx 文件,会返回 IWorkbookData 格式的文档数据。

TypeScript
// 接受 File 对象const snapshot = await univerAPI.importSheetToSnapshotAsync(file)// 或者接受远程文件的 URL// const snapshot = await univerAPI.importSheetToSnapshotAsync('https://example.com/filename.xlsx');// 通过快照创建一个新的工作簿if (snapshot) univerAPI.createWorkbook(snapshot)

导出 .xlsx

通过 unitId 导出 .xlsx 文件

注意事项

unitId 导出依赖协同服务。如果未启用协同,请使用快照导出。

在启用协同编辑的时候,每个文档都有一个唯一的 unitId。使用 univerAPI.exportSheetByUnitIdAsync 传入 unitId 参数会返回 File 对象。

TypeScript
const fWorkbook = univerAPI.getActiveWorkbook()const unitId = fWorkbook.getId()const file = await univerAPI.exportSheetByUnitIdAsync(unitId)// 通过 Facade API 下载文件if (file) univerAPI.downloadFile(file, 'univer', 'xlsx')

通过 IWorkbookData 导出 .xlsx 文件

快照导出不依赖协同服务,适合仅在本地处理数据的场景。

使用 univerAPI.exportSheetBySnapshotAsync 传入 IWorkbookData 会返回 File 对象。

TypeScript
const fWorkbook = univerAPI.getActiveWorkbook()const snapshot = fWorkbook.save()const file = await univerAPI.exportSheetBySnapshotAsync(snapshot)// 通过 Facade API 下载文件if (file) univerAPI.downloadFile(file, 'univer', 'xlsx')

你觉得这篇文档如何?

© 2026 DreamNum Co., Ltd.