一个简单易用的Mac记账应用,支持CSV文件导入,自动解析交易记录。
- 📊 CSV文件导入: 支持上传CSV文件,自动解析交易记录
- 💰 财务统计: 实时显示总收入、总支出和净收入
- 🔍 搜索过滤: 支持按描述、类别搜索和过滤交易记录
- 📱 现代界面: 使用SwiftUI构建的现代化用户界面
- 💾 数据持久化: 自动保存数据到本地
应用支持以下CSV格式:
日期,描述,金额,类别,类型
2025-01-01,工资收入,8000,工资,收入
2025-01-02,超市购物,-150.5,生活用品,支出- 日期: 支持多种格式 (yyyy-MM-dd, yyyy/MM/dd, MM/dd/yyyy等)
- 描述: 交易描述
- 金额: 数字,支持负数表示支出
- 类别: 交易类别 (如:工资、餐饮、住房等)
- 类型: 可选,"收入"或"支出" (如果没有此列,会根据金额正负自动判断)
- 在Xcode中打开
Budgee.xcodeproj - 选择目标设备为Mac
- 点击运行按钮构建并启动应用
- 点击"上传CSV文件"按钮选择你的CSV文件
- 应用会自动解析并显示交易记录
Budgee/
├── BudgeeApp.swift # 应用入口
├── ContentView.swift # 主界面
├── Models/ # 数据模型和业务逻辑
│ ├── Transaction.swift # 交易记录数据模型
│ ├── TransactionManager.swift # 交易状态管理
│ └── CSVParser.swift # CSV解析器
├── Views/ # SwiftUI视图文件
├── Components/ # 可重用UI组件
├── DesignSystem/ # 设计系统和样式
├── Assets.xcassets/ # 应用资源
└── Budgee.entitlements # 应用权限配置
- macOS 14.0+
- Xcode 15.0+
- Swift 5.9+
项目包含一个示例CSV文件 sample_transactions.csv,你可以用它来测试应用功能。
这个应用使用了以下技术:
- SwiftUI: 用户界面框架
- Combine: 响应式编程
- UserDefaults: 本地数据存储
- FileImporter: 文件导入功能
Apache License 2.0