上传文件
  1. base64hub
  2. 文件工具
  3. Base64 转 Excel

Base64 转 Excel(XLSX)

粘贴 Base64 编码的电子表格,即可以表格形式查看第一个工作表并保存 .xlsx。在把 API 导出的数据导入其他地方之前,可以先用它检查一遍。

免费 无需注册,不限次数 本地 不上传任何内容 表格 第一个工作表,最多 200 行 × 30 列 更新于 2026年10月27日
输入 –输出 –大小 –

在你的浏览器中处理。此页面无法将你的数据发送到任何地方: 我们如何确认

如何将 Base64 解码为 Excel 文件

  1. 把 Base64 粘贴到 Base64 或 data URI。data:application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;base64, 这样的前缀可以保留。如果是保存为文本的长导出文件,请使用 打开 .txt 文件。
  2. 表格上方有一行显示工作表名称,例如:第一个工作表:“Invoices”(工作簿中共 3 个)。表格顶部是列字母,左侧是工作表自身的行号,所以即使前面的行是空的,第 17 行在 Excel 中也是第 17 行。
  3. 表格下方的条目列表显示工作簿的每个组成部分,每项都有 查看 和 保存。
  4. 点击 下载文件 保存 .xlsx。

读取工作表不需要 Excel 或任何插件。页面在你的浏览器中解压工作簿并解析其中的 XML,页面的内容安全策略只允许 Cloudflare 的浏览量统计这一项网络请求,所以数据留在你的设备上。

预览如何显示单元格的值

表格显示的是每个单元格中存储的内容,不应用 Excel 的数字格式。检查导出数据时这通常正是你想要的,但有几类单元格看起来与 Excel 中不同:

Excel 中的单元格预览中显示
文本文本本身
25%、$1,234.50存储的数字:0.25、1234.5
15/01/2025日期序列号:45672
12:00一天的比例:0.5
显示为 241 的 =C2*2241,即随文件保存的计算结果
TRUE、FALSETRUE、FALSE
#DIV/0!#DIV/0!
合并单元格仅左上角单元格的值

要把序列号转成日期,在 1899 年 12 月 30 日上加相应的天数即可:datetime(1899, 12, 30) + timedelta(days=45672) 得到 2025 年 1 月 15 日。使用 1904 日期系统(旧版 Mac Excel 中的一个设置)的工作簿则从 1904 年 1 月 1 日开始计数。

只有当写入文件的程序保存了公式结果时,结果才会显示。Excel 和 LibreOffice 会保存;有些库只写公式不写结果,这些单元格就显示为空。

预览有一些限制:它按工作簿顺序读取第一个工作表(最左边的标签页,即使它被隐藏或当前激活的是其他标签页),最多 200 行、30 列(A 到 AD)。超出时会出现提示“最多显示 200 行 × 30 列。”。图表、图片、批注和格式不会显示。

XLSX、XLS、CSV 还是别的什么

Base64 开头文件怎么处理
UEsDBXLSX,或其他基于 ZIP 的文件XLSX 和 XLSM 可以正常预览
0M8R4KGxGuE旧版 .xls(Excel 97–2003)或受密码保护的 .xlsx工具会提示“这看起来不像 XLSX”,并检测为 DOC/XLS/MSG (OLE)。工具无法区分它们,扩展名 保持为 xlsx:旧版工作簿请填 xls,受保护的文件保留 xlsx
77u/带 UTF-8 字节顺序标记的文本,通常是 CSV 导出见 Base64 转 CSV
PD94bWwgXML(<?xml ),可能是 Excel 2003 XML 电子表格以扩展名 xml 保存;Excel 可以打开

有两种基于 ZIP 的变体需要注意。带宏的工作簿包含 xl/vbaProject.bin;它可以正常预览,但以 .xlsx 扩展名保存时 Excel 会拒绝打开,所以下载前请填入 xlsm。二进制工作簿(.xlsb)把工作表存在 .bin 文件里而不是 XML 中:工具仍会把它识别为 XLSX 并列出条目,但不显示表格,保存时必须使用 xlsb。

如果对方发来的是 CSV 而不是工作簿,会出现提示“这看起来是 CSV,而不是 XLSX。”,并附带 下载为 .csv 按钮。两种文件 Excel 都能打开。

Base64 电子表格从哪里来

报表和财务类 API 会在 JSON 中以 Base64 字段返回生成的导出文件。自动化和低代码平台经常以 Base64 字符串在各步骤之间传递文件,邮件则以 Base64 MIME 部分携带电子表格附件。反方向把工作簿转成字符串,请使用 Excel 转 Base64。

在 Python 中读取 Base64 工作簿

借助 openpyxl 包,可以直接从解码后的字节读取工作簿:

import base64, io
from openpyxl import load_workbook

with open("export.b64") as f:
    raw = base64.b64decode(f.read())

wb = load_workbook(io.BytesIO(raw), data_only=True)
ws = wb.worksheets[0]
for row in ws.iter_rows(values_only=True):
    print(row)

data_only=True 返回保存的公式结果而不是公式本身,与预览显示的值相同。与预览不同的是,openpyxl 会对日期应用数字格式,所以上面那个单元格会返回 datetime(2025, 1, 15, 0, 0)。更多解码方法见 Python 中的 Base64。

常见问题

怎么把 Base64 转换成 Excel 文件?

把字符串粘贴到上方,点击 下载文件。工作簿会保存为 decoded.xlsx,字节与当初编码的完全一致,所以公式、格式和所有工作表都完好无损。

为什么日期显示成 45672 这样的数字?

Excel 把日期存储为自 1899 年 12 月 30 日起的天数,只在屏幕上按日期格式显示。预览显示的是存储的值:45672 就是 2025 年 1 月 15 日,用 Excel 打开文件时它又会显示为日期。

能查看其他工作表吗?

表格只显示第一个工作表。其他工作表以 xl/worksheets/sheet2.xml 等形式列出;查看 会显示它们的原始 XML,其中的文本单元格是指向 xl/sharedStrings.xml 的编号。

Excel 提示文件格式或扩展名无效,为什么?

扩展名与内容不符。带宏的工作簿(包含 xl/vbaProject.bin)必须保存为 .xlsm,被识别为 OLE 的旧版工作簿则需要 .xls;在 扩展名 中填入正确的扩展名,再重新下载即可。