Skip to content

delon-xie/XstReader

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

119 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

English | 中文

Xst Reader

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 属性
  • 命令行导出:批量导出邮件正文、附件或属性

快速开始

前置要求

编译

# 编译跨平台 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

XstExport 命令行工具

用于从 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

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:

Features

  • 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

Quick Start

Prerequisites

Build

# Build cross-platform GUI
dotnet build XstReader.Avalonia/XstReader.Avalonia.csproj

# Build cross-platform CLI export tool
dotnet build XstPortableExport/XstPortableExport.csproj

Run

# Launch GUI
dotnet run --project XstReader.Avalonia

# Export via CLI
dotnet run --project XstPortableExport -- -e -t <output-dir> <.ost/.pst-file>

Installation

Download the appropriate platform build from the Releases page and extract to use.

Project Structure

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

XstExport CLI Tool

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)

Release History

  • 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

License

Distributed under the MS-PL license. See license.md for more information.

About

Xst Reader is an open source viewer for Microsoft Outlook’s .ost and .pst files, written entirely in C#. To download an executable of the current version, go to the releases tab.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C# 90.5%
  • Rich Text Format 9.5%