BankReporter — это простой и удобный инструмент на Java, который умеет анализировать банковские данные из файлов CSV и JSON.
Это мой первый проект на Java, созданный в процессе обучения. Он помогает практиковаться в работе с файлами, парсинге данных и базовой обработке информации.
✨ Что умеет BankReporter:
- 📄 Чтение данных из файлов CSV
- 🔗 Чтение данных из файлов JSON
- 📊 Консольная обработка и вывод информации
- 🛠 Код легко расширяемый для новых форматов и функций
- 📁 Сохраняет результат в "./BankReporter/output"
| Технология | Описание | Эмодзи |
|---|---|---|
| Java 24 | Основной язык проекта | ☕ |
| Gradle | Сборка и управление зависимостями | 📦 |
| Jackson | Парсинг JSON | 🔗 |
- Склонируйте репозиторий:
git clone https://github.com/keitah/BankReporter
- Перейдите в каталог проекта:
cd BankReporter - Скомпилируйте и запустите приложение:
javac Main.java java Main
- Следуйте инструкциям в консоли, чтобы загрузить CSV или JSON файл для анализа.
Пример CSV:
account,description,amount
123455,TEST_TRANSACTION,11.00
123455,покупка 1,123.00
123455,sim,0.04
123456,зарплата,-500.00
123457,кофе,5.50Пример JSON:
[
{
"account": "123455",
"description": "TEST_TRANSACTION",
"amount": 11.00
},
{
"account": "123455",
"description": "покупка 1",
"amount": 123.00
},
{
"account": "123455",
"description": "sim",
"amount": 0.04
},
{
"account": "123456",
"description": "зарплата",
"amount": -500.00
},
{
"account": "123457",
"description": "кофе",
"amount": 5.50
}
]
Консольный вывод:
CSV Transactions:
123455 | TEST_TRANSACTION | 11.00 | Balance: 989.00
123455 | покупка 1 | 123.00 | Balance: 866.00
123455 | sim | 0.04 | Balance: 865.96
123456 | зарплата | -500.00 | Balance: 1365.96
123457 | кофе | 5.50 | Balance: 1360.46
CSV summary: Initial=1000.00, Income=500.00, Expense=139.54, Final=1360.46
JSON Transactions:
123455 | TEST_TRANSACTION | 11.00 | Balance: 989.00
123455 | покупка 1 | 123.00 | Balance: 866.00
123455 | sim | 0.04 | Balance: 865.96
123456 | зарплата | -500.00 | Balance: 1365.96
123457 | кофе | 5.50 | Balance: 1360.46
JSON summary: Initial=1000.00, Income=500.00, Expense=139.54, Final=1360.46- 📊 Поддержка Excel (.xlsx)
- 🔍 Расширенный анализ: группировка по категориям
- 🖥 Графический интерфейс (GUI)
- ⚡ Оптимизация и обработка больших файлов
Если у вас есть идеи, предложения или замечания, создавайте issues или делайте pull request.
Я только учусь, поэтому буду рад любой обратной связи! 😊