Skip to content

Entry-level Java project demonstrating core fundamentals including file I/O, data persistence, collections, and clean menu-driven application design.

Notifications You must be signed in to change notification settings

AmbrogioBailey/java-file-notes-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

File Notes App — Java

A Java console application that allows users to create, view, search, and delete notes that are persisted to a local file. This project was built to strengthen core Java skills, particularly file I/O, collections, and menu-driven application design.


🚀 Why This Project Matters

This app simulates real-world application behavior by:

  • Persisting user data after the program exits
  • Validating user input at every step
  • Structuring logic into clear, reusable methods

It demonstrates how Java can be used to build practical, stateful applications, even in a console environment.


✨ Features

  • Create Notes — Save notes permanently to notes.txt
  • View Notes — Display all saved notes in a numbered list
  • Search Notes — Case-insensitive keyword search
  • Delete Notes (With Confirmation) — Safely remove notes and update storage
  • Input Validation — Handles invalid menu choices and user input gracefully

🧠 Technical Skills Demonstrated

  • Java
  • File I/O (FileWriter, Files.readAllLines, Files.write)
  • Collections (List<String>)
  • switch-based menu navigation
  • Exception handling
  • Clean, modular program structure

🏗️ How It Works

  • Notes are stored line-by-line in notes.txt
  • Each menu action is handled by a dedicated method
  • Deleting a note rewrites the file with updated data

▶️ How to Run

  1. Clone the repository
  2. Open in IntelliJ IDEA
  3. Run Main.java
  4. Use the menu to manage notes

👨🏽‍💻 Future Improvements

  • Add timestamps to notes
  • Edit existing notes
  • Add categories or tags
  • Export notes to CSV or JSON

👤 Author

Ambrogio Bailey

About

Entry-level Java project demonstrating core fundamentals including file I/O, data persistence, collections, and clean menu-driven application design.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages