English | 中文
Xst Reader 是一款开源的 Microsoft Outlook .ost 和 .pst 文件查看器,完全使用 C# 编写,无需安装任何 Microsoft Office 组件。
v1.15 新增: 全面跨平台支持 — 现已支持 macOS、Linux 和 Windows。
界面采用经典的三栏邮件查看器布局:
- 三栏布局:文件夹树 / 邮件列表 / 邮件内容+附件
- 支持 .ost 文件:可直接打开 Outlook 缓存文件(Outlook 自身不支持)
- 多种正文格式:纯文本、HTML(WebView 渲染)、RTF(跨平台 RTF→HTML 转换)
- 附件管理:查看、打开、另存为、批量保存
- S/MIME 支持:查看加密或签名邮件(需匹配证书)
- 增强搜索:支持按主题/发件人/日期/抄送/密送分区筛选,双向查找
- 属性查看:查看邮件、收件人、附件的全部 MAPI 属性
- 命令行导出:批量导出邮件正文、附件或属性
- .NET 10 SDK 或更高版本
# 编译跨平台 GUI
dotnet build XstReader.Avalonia/XstReader.Avalonia.csproj
# 编译跨平台 CLI 导出工具
dotnet build XstPortableExport/XstPortableExport.csproj# 启动 GUI
dotnet run --project XstReader.Avalonia
# 使用 CLI 导出
dotnet run --project XstPortableExport -- -e -t <输出目录> <.ost/.pst文件>从 Releases 页面下载对应平台的构建产物,解压后即可使用。
| 项目 | 说明 | 平台 |
|---|---|---|
XstReader.Avalonia |
跨平台 GUI(Avalonia UI 11) | macOS / Linux / Windows |
XstPortableExport |
跨平台 CLI 导出工具(.NET 10) | macOS / Linux / Windows |
XstReader.Base |
核心库(.ost/.pst 文件读取) | 跨平台 |
XstReader |
原 WPF GUI | 仅 Windows |
XstExport |
原 Windows CLI 导出工具 | 仅 Windows |
用于从 Outlook 文件导出邮件、附件或属性的命令行工具。
XstExport {-e|-p|-a|-h} [-f=<Outlook文件夹>] [-o] [-s] [-t=<目标目录>] <Outlook文件名>
| 参数 | 说明 |
|---|---|
-e, --email |
导出邮件正文(.html/.rtf/.txt)及关联附件 |
-p, --properties |
仅导出属性(CSV 格式) |
-a, --attachments |
仅导出附件 |
-h, --help |
显示帮助 |
-f=<文件夹> |
指定起始 Outlook 文件夹(支持部分路径) |
-o, --only |
不导出子文件夹 |
-s, --subfolders |
保留子文件夹结构 |
-t=<目标目录> |
输出目录(绝对路径或相对路径) |
- 1.15 — 全面跨平台迁移:核心库升级至 .NET 10,新增 Avalonia GUI(macOS/Linux/Windows),HTML 邮件 WebView 渲染,RTF 跨平台转换,增强搜索
- 1.14 — 新增命令行导出工具(Windows + 跨平台版本)
- 1.12 — 支持查看加密/签名邮件
- 1.8 — 支持 Cc/Bcc 搜索,显示邮件时间
- 1.7 — 邮件内容导出(HTML/RTF/TXT)
- 1.6 — 邮件列表搜索
- 1.4 — 属性导出为 CSV
- 1.2 — 内联附件显示
- 1.1 — 收件人和附件属性查看
- 1.0 — 首次发布
详细更新说明请参阅 docs/ReleaseNotes_1.15.md
基于 MS-PL 许可证分发,详见 license.md。
English | 中文
Xst Reader is an open source viewer for Microsoft Outlook's .ost and .pst files, written entirely in C#, with no dependency on any Microsoft Office components.
New in v1.15: Full cross-platform support — now runs on macOS, Linux, and Windows.
It presents as a simple, classic, three-pane mail viewer:
- Three-pane layout: Folder tree / Message list / Content + Attachments
- Open .ost files: Read Outlook cache files directly (which Outlook itself cannot open)
- Multiple body formats: Plain text, HTML (WebView rendering), RTF (cross-platform RTF→HTML conversion)
- Attachment management: View, open, save-as, batch save
- S/MIME support: View encrypted or signed messages (requires matching certificate)
- Enhanced search: Field-selectable filtering (Subject/From-To/Date/Cc/Bcc) with bidirectional find next/previous
- Property inspection: View all MAPI properties of messages, recipients, and attachments
- CLI export: Batch export email bodies, attachments, or properties
- .NET 10 SDK or later
# Build cross-platform GUI
dotnet build XstReader.Avalonia/XstReader.Avalonia.csproj
# Build cross-platform CLI export tool
dotnet build XstPortableExport/XstPortableExport.csproj# Launch GUI
dotnet run --project XstReader.Avalonia
# Export via CLI
dotnet run --project XstPortableExport -- -e -t <output-dir> <.ost/.pst-file>Download the appropriate platform build from the Releases page and extract to use.
| Project | Description | Platform |
|---|---|---|
XstReader.Avalonia |
Cross-platform GUI (Avalonia UI 11) | macOS / Linux / Windows |
XstPortableExport |
Cross-platform CLI export tool (.NET 10) | macOS / Linux / Windows |
XstReader.Base |
Core library (.ost/.pst file reader) | Cross-platform |
XstReader |
Original WPF GUI | Windows only |
XstExport |
Original Windows CLI export tool | Windows only |
A command line tool for exporting emails, attachments, or properties from an Outlook file.
XstExport {-e|-p|-a|-h} [-f=<Outlook folder>] [-o] [-s] [-t=<target directory>] <Outlook file name>
| Option | Description |
|---|---|
-e, --email |
Export in native body format (.html/.rtf/.txt) with attachments |
-p, --properties |
Export properties only (CSV) |
-a, --attachments |
Export attachments only |
-h, --help |
Display help |
-f=<folder> |
Starting Outlook folder (supports partial paths) |
-o, --only |
Do not export from subfolders |
-s, --subfolders |
Preserve subfolder structure |
-t=<target dir> |
Output directory (absolute or relative path) |
- 1.15 — Full cross-platform migration: core library upgraded to .NET 10, new Avalonia GUI (macOS/Linux/Windows), HTML WebView rendering, cross-platform RTF conversion, enhanced search
- 1.14 — Added command line export tool (Windows + cross-platform versions)
- 1.12 — Added support for encrypted/signed messages
- 1.8 — Cc/Bcc search, email time display
- 1.7 — Email content export (HTML/RTF/TXT)
- 1.6 — Message list search
- 1.4 — Property export to CSV
- 1.2 — Inline attachment display
- 1.1 — Recipient and attachment property viewing
- 1.0 — Initial release
Detailed release notes: docs/ReleaseNotes_1.15.md
Distributed under the MS-PL license. See license.md for more information.
