notepad++未保存内容能否恢复取决于是否异常退出及是否开启会话快照功能;需勾选“remember current session”和“enable session snapshot”,否则崩溃后backup目录为空;new 1等无名文档恢复成功率极低,recode插件与此无关。

Notepad++ 未保存内容能否恢复,只取决于两件事:是否异常退出 + 是否提前开启了会话快照功能。不是所有关闭都能恢复,主动点 × 并选“不保存”就彻底没了。
会话恢复提示没弹出来?先确认这两个开关开了没
Notepad++ 不像 Word 那样默认记临时状态,它必须手动启用才会写快照。关键设置在:设置 → 首选项 → 备份页顶部:
-
Remember current session for next launch:必须勾选,否则session.xml根本不生成 -
Enable session snapshot and periodic backup:必须勾选,否则recovery_*.tmp文件不会落地
这两个选项默认都是关闭的。如果没开,哪怕崩溃了,%APPDATA%\Notepad++\backup\ 目录下也空空如也——不是恢复失败,是压根没存过。
手动翻 backup 目录找文件,但别指望直接打开 recovery_*.tmp
recovery_*.tmp 是内存 dump,不是文本文件。双击用记事本或 Notepad++ 打开只会看到乱码或报错 Invalid file format。正确做法是:
- 先确认
notepad++.exe进程已从任务管理器彻底退出(残留进程会导致快照加载失败) - 启动 Notepad++,**不要新建、不要打开任何文件**,等几秒看左下角是否弹灰色提示:“恢复上次会话?[是] [否]”
- 没弹的话,再点菜单:
文件 → 会话恢复 → 恢复上次会话(该选项灰显 = 快照不可用)
如果仍无效,才去 %APPDATA%\Notepad++\backup\ 翻文件。里面可能有两类东西:
-
session.xml:纯 XML,记录标签页名、路径、光标位置,但不含文本内容 -
recovery_*.tmp:二进制文件,含实际文本,但必须由 Notepad++ 自己加载,不能手动打开
为什么 new 1 标签的内容大概率找不回来?
新建未命名文档(即 new 1、new 2)在 Notepad++ 里属于“无文件关联”的编辑状态。它的恢复依赖 session.xml + 对应的 recovery_*.tmp,但:
- 如果上次是主动关闭(点了 × → 选“否”),Notepad++ 会清掉这个标签的快照记录
- 如果 backup 目录被 OneDrive/iCloud 同步占用,
session.xml写入失败,整个恢复链就断了 -
recovery_*.tmp文件名不带原始内容线索(比如不会叫new_20260722.txt),只能靠修改时间猜,且没有内容预览
也就是说,new 1 写完就关,又没开快照,基本等于扔进回收站前按了 Shift+Delete。
Recode 插件和恢复完全无关,别白费力气
网上常有人说“装 Recode 插件就能找回未保存内容”,这是典型误解:
-
Recode只管你手动存进去的代码片段,数据存在%APPDATA%\Notepad++\plugins\Config\Recode\,和backup目录物理隔离 - 它不监听当前文档状态,不扫描
recovery_*.tmp,也不会自动抓取未保存文本 - 试图用
Recode加载recovery_*.tmp,结果只有报错或乱码
真要防丢,唯一靠谱的做法是:开快照 + 养成随手 Ctrl+S 习惯 + 把重要草稿及时另存为真实文件。快照机制本身很脆弱,依赖进程干净退出、路径无权限冲突、目录没被同步工具锁死——任何一个环节出问题,recovery_*.tmp 就只是硬盘上一段无法解读的二进制垃圾。











