如何在VSCode中利用Node环境将本地Excel数据转换为Markdown表格

梦明酱_2900

梦明酱_2900

2026-07-07

1011人浏览

原创

因为vscode本身不运行node.js,需确认终端已启动在node环境且项目有package.json;直接使用浏览器端库(如sheetjs cdn版)无法读取本地文件系统路径,必须用node原生fs或xlsx.readfile方法。

如何在vscode中利用node环境将本地excel数据转换为markdown表格

为什么直接用 xlsx 读 Excel 在 VSCode 里会报错?

因为 VSCode 本身不运行 Node.js,你得先确认当前终端(Terminal)已启动在 Node 环境下,且项目根目录有 package.json。常见错误是直接在 VSCode 内置终端执行 node script.js 却没装依赖,或用了浏览器端库(如 SheetJS 的 CDN 版)——它不能读取本地文件系统路径。

  • 必须用 Node.js 原生 fs 或 readFile 读取 .xlsx 文件,不能靠 fetch 或 XMLHttpRequest
  • xlsx 包的 readFile 方法只支持 Node 环境,浏览器版要用 read + ArrayBuffer
  • 确保安装的是 xlsx(不是 exceljs 或 sheetjs 别名),命令是:npm install xlsx

怎么写一个最小可用的转换脚本?

核心是用 xlsx 解析 Excel,再把每张 sheet 的二维数组转成 Markdown 表格语法。不需要 GUI、不依赖 VSCode 插件,纯 Node 脚本即可跑通。

  • 脚本开头加 #!/usr/bin/env node(可选,但能避免 Windows 下双击报错)
  • 用 const workbook = XLSX.readFile("data.xlsx") 读取文件,路径必须是相对或绝对文件系统路径
  • 取第一张表:const sheet = workbook.Sheets[workbook.SheetNames[0]],再用 XLSX.utils.sheet_to_json(sheet, { header: 1 }) 得到原始二维数组
  • 手动拼接 Markdown 表格:第一行为表头(用 | 分隔),第二行是分隔符(如 |---|---|),后续每行用 | 包裹单元格内容
const XLSX = require('xlsx');
const fs = require('fs');

const workbook = XLSX.readFile('input.xlsx');
const sheet = workbook.Sheets[workbook.SheetNames[0]];
const data = XLSX.utils.sheet_to_json(sheet, { header: 1 });

// 简单转 Markdown 表格(无空值处理、无对齐控制)
const mdRows = data.map(row => `|${row.map(cell => String(cell).replace(/|/g, '\|')).join('|')}|`);
const header = mdRows[0];
const separator = `|${'---|'.repeat(data[0].length)}`;
const mdTable = [header, separator, ...mdRows.slice(1)].join('
');

fs.writeFileSync('output.md', mdTable);

表格内容含换行、竖线、中文时怎么不出乱码?

Excel 单元格里的换行符( )和竖线(|)会直接破坏 Markdown 表格结构,必须转义;中文本身没问题,但若文件编码不是 UTF-8,readFile 会读成乱码。

OC SSH Tunnel Node Recovery
OC SSH Tunnel Node Recovery

诊断并恢复通过 SSH 隧道连接的 OpenClaw 节点。用于解决配对必需错误、隧道冲突、远程端点错误以及 SSH 目标配置错误等问题。

下载
  • 用 fs.readFileSync('input.xlsx', 'binary') + XLSX.read(buffer, { type: 'binary' }) 可规避部分编码问题
  • 每个单元格内容先 String(cell),再 .replace(/|/g, '\|').replace(/ /g, ' ')(换行建议替换成空格,Markdown 表格不支持单元格内换行)
  • 如果 Excel 有合并单元格,sheet_to_json 默认会跳过空单元格,导致列错位——此时改用 XLSX.utils.sheet_to_json(sheet, { defval: '', blankrows: true })

VSCode 里怎么一键运行并自动打开结果?

不用每次敲命令,配个 tasks.json 就能 Ctrl+Shift+P → “Tasks: Run Task” 触发,甚至加一句 code output.md 自动用 VSCode 打开 Markdown 预览。

  • 在项目 .vscode/tasks.json 里写 task,command 设为 node convert.js
  • 加 "group": "build" 方便归类,"isBackground": false 确保等脚本结束再下一步
  • 最后追加一行 console.log('✅ Done. Open output.md in VSCode.');,人眼确认比自动打开更可靠——因为 code 命令在非 CLI 启动的 VSCode 实例里可能不可用

真正卡住人的地方往往不是语法,而是 Excel 文件路径写错、合并单元格没处理、或者以为 VSCode 自带 Node —— 它只是个编辑器,背后全靠你自己配好的环境。

相关专题

更多
vscode是什么_vscode怎么安装配置
vscode是什么_vscode怎么安装配置

VS Code(Visual Studio Code)是一款免费、开源的跨平台代码编辑器,由微软开发和维护。它被广泛用于软件开发和编程,支持多种编程语言和框架。VS Code 同时提供了丰富的功能和扩展性,使开发者可以高效地编写、编辑和调试代码。

2023.06.30

1175

18

vscode怎么运行代码
vscode怎么运行代码

vscode是一个运行于MacOS X、Windows和Linux之上的,针对于编写现代Web和云应用的跨平台源代码编辑器;vscode免费而且功能强大,对JavaScript和NodeJS的支持非常好,自带很多功能,例如代码格式化,代码智能提示补全、Emmet插件等。php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

2023.07.21

2332

3

vscode使用的框架介绍
vscode使用的框架介绍

VSCode是一款跨平台代码编辑器,它基于Electron框架和Monaco Editor构建。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1809

12

vscode一般用来写什么语言
vscode一般用来写什么语言

VSCode是一款功能强大的代码编辑器,支持多种编程语言和文件格式。它内置对 JavaScript、Python、Java、C++、TypeScript、HTML/CSS、Go 等语言的支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.14

1627

8

vscode可以写什么语言
vscode可以写什么语言

vscode是一款强大的代码编辑器,支持多种编程语言的开发。通过安装扩展,可以为 JavaScript/TypeScript、Python、Java、C#、PHP、Go、Ruby、Rust、HTML/CSS 等语言提供智能代码补全、调试和格式化等功能。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

2507

12

vscode中文设置方法
vscode中文设置方法

方法一:在设置页面中,搜索“locale”,并选择“zh-cn”。方法二:按“Ctrl Shift P”快捷键,输入“Configure Display Language”,将语言修改为“zh-cn”。如果上述方法无效,可考虑安装中文插件。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1778

14

vscode用途介绍
vscode用途介绍

Visual Studio Code(VSCode)是一款由 Microsoft 开发的多功能文本编辑器,适用于各种编程语言。作为一款开源软件,VSCode 拥有代码高亮、自动补全、调试、Git 集成等强大功能,成为程序员不可或缺的工具。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1202

10

vscode和visualstudio的区别
vscode和visualstudio的区别

Visual Studio是一款功能强大的集成开发环境(IDE),适用于专业开发人员进行复杂项目的构建。而VSCode则是一款轻量级的代码编辑器,更适合各种规模的项目开发。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

1076

8

vscode设置中文界面不生效解决方法
vscode设置中文界面不生效解决方法

vscode设置中文界面不生效解决方法:安装中文语言包、通过命令面板设置语言、检查 locale.json 设置、重新安装中文语言包、检查 VSCode 版本和更新、排除插件冲突、检查系统语言设置、查看 VSCode 日志和错误消息、重置 VSCode 设置、查看官方文档和社区支持。想了解更多vscode的相关内容,可以阅读本专题下面的文章。

2024.03.15

414

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 43.3万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.5万人学习