OneNote导出Markdown完整指南:onenote-md-exporter 5步无损迁移你的笔记本

发布时间:2026/8/14 14:26:24
OneNote导出Markdown完整指南:onenote-md-exporter 5步无损迁移你的笔记本 OneNote导出Markdown完整指南onenote-md-exporter 5步无损迁移你的笔记本【免费下载链接】onenote-md-exporterConsoleApp to export OneNote notebooks to Markdown formats项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporter一个真实场景被OneNote困住的十年笔记老张是位产品经理OneNote里躺着十年的产品文档、会议纪要和个人知识库整整6个笔记本、上千个页面。最近他想迁移到Obsidian做双链笔记却发现手动复制粘贴后表格全乱、层级全平、内部链接全变死链。他尝试过的在线转换工具要上传整个笔记本到云端——产品数据怎么敢上传就在他想放弃时朋友推荐了onenote-md-exporter一个能在本地把 OneNote 笔记本完整导出为 Markdown 的开源命令行工具号称无损迁移。这篇文章就用老张的真实路径带你走完整个 OneNote 转 Markdown 的流程。它到底是什么专治OneNote迁移的本地转换器onenote-md-exporter 是一个运行在 Windows 上的控制台程序通过OneNote 和 Word 的官方 Interop 接口直接读取笔记内容再用Pandoc把中间格式转成 Markdown全程本地处理、不经过任何云端。它解决的核心问题有三个格式保留表格、图片、附件、字体颜色、背景色、折叠段落都能带出来结构保留分区、分区组、页面层级不会被扁平化链接可用页面内部链接可以转成 Markdown 链接或 Obsidian 双链适用人群很明确想迁到 Obsidian、Joplin、Typora 等 Markdown 系笔记软件的 OneNote 用户以及想给笔记本做一份开放格式长期备份的任何人。动手实操先跑起来再说环境要求先核对这四项项目要求系统Windows 10 或更高版本OneNote2013 及以上版本不支持Windows 商店版Word2013 及以上版本用于 DocX 转换运行时.NET 自包含发布一般无需额外安装工具依赖 OneNote 和 Word 的 COM 接口所以导出前要确保 OneNote 已启动、要导出的笔记本已完整同步。获取与运行从项目的 Releases 页面下载最新版压缩包解压后你会看到OneNoteMdExporter.exe。之后的操作非常简单启动 OneNote确认要导出的笔记本已加载完毕双击运行OneNoteMdExporter.exe按提示选择要导出的笔记本输入序号输入 0 表示全部导出选择导出格式1为 Markdown2为 Joplin程序会问你是否修改高级设置选 yes 会用记事本打开appSettings.json等待导出结束后会自动打开导出文件夹——顺手去泡杯咖啡 ☕命令行更快如果你要反复导出命令行模式更顺手。先看帮助OneNoteMdExporter.exe --help常用命令示例# 导出指定笔记本为 Markdown 格式 OneNoteMdExporter.exe --notebook 工作笔记 --format 1 # 只导出某个分区 OneNoteMdExporter.exe --notebook 工作笔记 --section 需求文档 --format 1 # 只导出某个页面 OneNoteMdExporter.exe --notebook 工作笔记 --section 需求文档 --page 2024年规划 --format 1 # 导出全部笔记本到 Joplin 格式全程不等待输入 OneNoteMdExporter.exe --all-notebooks --format 2 --no-input命令参数一览来自Program.cs--notebook指定笔记本名、--format选格式1Markdown2Joplin、--section和--page做精细过滤、--all-notebooks全量导出、--no-input跳过交互、--ignore-errors出错也继续。核心功能逐个拆解双引擎转换管线工具的处理流程分三层数据提取层通过 Interop API 读取 OneNote 页面 XML并让 OneNote 把页面发布为 DocX格式转换层用 Pandoc 把 DocX 翻译成 Markdown后处理层用正则修复格式问题、转换链接、整理图片引用这套流程的关键在预处理工具会先解析页面 XML展开折叠段落、把 OneNote 标签转成 emoji、处理缩进和样式再交给 Pandoc。这样能让最终输出质量远高于导出-复制-粘贴的土办法。两种导出格式特性Markdown 格式Joplin 格式分区层级文件夹层级Joplin 笔记本层级页面排序按文件名排序保留原始顺序页面层级前缀或文件夹子笔记本目标平台Obsidian、Typora、VS CodeJoplin 导入导出目录里默认生成Export/文件夹按格式笔记本名时间戳组织每次导出都是独立目录不会覆盖历史结果。页面层级三种处理方式OneNote 的父子页面结构可以用三种策略落盘# HierarchyAsFolderTree默认父页面变文件夹 Notebook1/Section1/父页面/子页面.md # HierarchyAsPageTitlePrefix父页面变文件名前缀 Notebook1/Section1/父页面_子页面.md # IgnoreHierarchy忽略层级全放分区下 Notebook1/Section1/子页面.md在appSettings.json中通过ProcessingOfPageHierarchy切换。链接处理四种策略OneNote 内部链接默认是onenote://协议在其他平台点不开。工具提供四种处理方式策略输出效果适用场景KeepOriginal保留onenote://...原样还想回迁 OneNoteConvertToMarkdown显示文本Joplin、通用编辑器ConvertToWikilink[[页面路径\|显示文本]]Obsidian 等双链笔记Remove删除链接只留文字清理旧引用注意跨笔记本链接和指向分区的链接会被移除这是工具的已知限制。资源文件存储图片和附件可以集中放也可以分散放RootFolder默认所有资源集中在笔记本根目录的resources/文件夹便于备份PageParentFolder资源放在各页面 md 文件旁边方便单页移动分享内容格式支持度内容类型支持情况说明简单表格✅转成 Markdown 表格复杂表格✅转成 HTML 表格需编辑器支持 HTML图片 / 附件✅按原位置引用字体/背景颜色✅转成 HTML 样式文本标签✅转成对应 emoji绘图⚠️扁平化为图片密码保护分区⚠️需先解锁再导出手写内容❌会丢失建议手动截图场景化进阶配置Obsidian 用户配置目标双链 文件夹层级 资源就近存放让知识图谱可直接重建。{ ProcessingOfPageHierarchy: HierarchyAsFolderTree, ResourceFolderLocation: PageParentFolder, OneNoteLinksHandling: ConvertToWikilink, AddFrontMatterHeader: true, PanDocMarkdownFormat: gfmraw_html, UseHtmlStyling: true }前端 YAML 头会写入页面标题、创建时间和更新时间方便 Obsidian 做元数据检索。Joplin 用户配置Joplin 有专门的导入格式配置侧重标准 Markdown 引用{ ProcessingOfPageHierarchy: HierarchyAsFolderTree, ResourceFolderLocation: RootFolder, OneNoteLinksHandling: ConvertToMarkdown, AddFrontMatterHeader: true, PanDocMarkdownFormat: gfm, PostProcessingMdImgRef: true }导出为 Joplin 格式后在 Joplin 里点文件 → 导入 → RAW - Joplin 导出目录选中导出文件夹即可。Joplin 格式会生成带元数据尾部的 md 文件和资源索引文件页面顺序、分区结构都能完整还原——这一点比通过 ENEX 中转迁移分区会被压平成标签要强得多详细对比可看仓库 doc 目录下的migration-to-joplin.md。极简配置只想快速备份内容、不关心层级{ ProcessingOfPageHierarchy: IgnoreHierarchy, ResourceFolderLocation: RootFolder, OneNoteLinksHandling: Remove, AddFrontMatterHeader: false, PanDocMarkdownFormat: commonmark, UseHtmlStyling: false }避坑指南三个高频问题问题 1启动就报 COMExceptionSystem.Runtime.InteropServices.COMException排查思路这类错误通常是本机 Office 环境异常而不是工具本身的问题。解决方案确认 OneNote 完整启动并已登录账户尝试修复或重装 Office最省事的办法在 OneNote 里用文件 → 导出把笔记本打包成.onepkg换一台环境干净的电脑导入后再导出具体步骤见 doc 目录的notebook-onepkg-export.md问题 2导出后图片丢失排查思路OneNote 默认可能没把云端的图片下载到本地。解决方案在 OneNote 中打开文件 → 选项 → 同步勾选下载所有文件和图像强制同步后再导出一次图片就能正常带出来了。问题 3上千页的大笔记本导出很慢优化策略用--section按分区分批导出最后再合并优先把笔记本放在 SSD 上导出期间关闭占用资源的后台程序若页面导出偶发失败用--ignore-errors让任务继续跑完最后看logs.txt定位失败的页面重导生态与工作流整合批量导出脚本多个笔记本要导出时可以用 PowerShell 串起来$notebooks (工作笔记, 学习资料, 项目文档) foreach ($nb in $notebooks) { Write-Host 正在导出: $nb .\OneNoteMdExporter.exe --notebook $nb --format 1 }迁移后的收尾动作导出完成后建议做这几件事链接体检在 Obsidian 中打开图谱视图确认双链已生效标签重建把 OneNote 标签 emoji 映射成目标平台的标签系统备份双保险导出目录和原始 OneNote 笔记本各留一份增量维护以后把导出加进季度例行任务保持 Markdown 备份新鲜结语今天就能动手的迁移计划onenote-md-exporter 的价值可以浓缩为四点本地离线处理笔记数据不出本机规避云端泄露风险无损转换分区层级、页面层级、链接、附件、样式都有对应落点双格式支持一套工具同时服务 Obsidian 和 Joplin 两个生态可脚本化命令行参数齐备批量导出天然适合自动化你现在就可以行动先在 OneNote 里挑一个不重要的测试笔记本用--format 1导出一次看看效果再对照本文的配置表调出你最顺手的输出。等确认格式满意再对你的主力笔记本动手——迁移从来不是一蹴而就但工具就绪之后剩下的只是时间问题。【免费下载链接】onenote-md-exporterConsoleApp to export OneNote notebooks to Markdown formats项目地址: https://gitcode.com/gh_mirrors/on/onenote-md-exporter创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考