# day-matter-export **Repository Path**: qimui/day-matter-export ## Basic Information - **Project Name**: day-matter-export - **Description**: 倒数日数据导出、转换为ics文件 - **Primary Language**: Java - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-03 - **Last Updated**: 2025-09-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Day Matter Export Day Matter Export 是一个用于将 Day Matter 备份文件(.dmabak)转换为标准 ICS 日历格式的工具。 ## 功能特点 - 支持拖拽或选择文件导入 .dmabak 文件 - 支持查看转换后的 JSON 数据 - 支持导出为标准 ICS 日历格式 - 支持农历日期的特殊处理 ## 使用说明 ### 1. 导入文件 有两种方式可以导入 Day Matter 备份文件: - 直接将 .dmabak 文件拖拽到程序窗口的虚线框内 - 点击"选择文件"按钮,从文件浏览器中选择 .dmabak 文件 ### 2. 转换文件 点击"转换"按钮,程序会将 .dmabak 文件解密并转换为 JSON 格式,并在界面上显示转换后的内容。 ### 3. 导出 ICS 点击"导出"按钮,可以将数据导出为标准的 ICS 日历文件。在导出时,你可以配置以下选项: #### 导出选项说明 1. **包含农历日期** - 选中此选项时,程序会为农历日期生成对应的公历日期事件 - 取消选中时,农历日期将保持原始格式(不推荐,因为大多数日历软件无法正确处理农历日期) 2. **农历循环年数** - 仅在选中"包含农历日期"时有效 - 设置要预生成的农历日期年数(1-100年) - 例如:设置为5年,则会为每个农历日期生成未来5年的公历日期事件 ### 关于 ICS 格式说明 1. ICS(iCalendar)是一种标准的日历数据交换格式,被广泛支持: - Apple 日历 - Google 日历 - Microsoft Outlook - 以及其他支持 iCalendar 标准的软件 2. ICS 格式的限制: - 原生只支持公历日期的循环规则 - 不支持农历日期的自动循环 - 为解决这个限制,本程序采用预生成方式处理农历日期 3. 农历日期的处理方式: - 将农历日期转换为对应的公历日期 - 在事件标题中保留农历日期信息 - 预生成未来N年的日期(通过"农历循环年数"设置) ### 注意事项 1. 农历日期转换 - 由于 ICS 格式的限制,农历日期会被转换为具体的公历日期 - 事件标题会包含原始农历日期信息,方便识别 2. 文件大小 - 如果包含农历日期且设置的年数较多,生成的 ICS 文件可能会较大 - 建议根据实际需求选择合适的年数范围 3. 导入注意 - 导入到日历软件后,建议检查重要日期的正确性 - 如果发现问题,可以调整配置后重新导出 ## 系统要求 - Java 17 或更高版本 - 支持 Windows、macOS 和 Linux 系统 ## 运行方法 入口类:com.fx.export.gui.MainWindow