CSCI213 Assignment 1: Game Cards Management System
This assignment aims to establish a basic familiarity with the JDK development system and its associated on-line Java API class documentation. Students should apply the appropriate fundamental programming concepts (such as variables, constants, arrays, strings, methods, selection and repetition constructs etc.) and make use of appropriate Java API classes (such as Scanner, PrintWriter, String etc.) that they have learnt to solve the given problem.
On completion of this assignment a student should be able to write simple Java application
• Makes use of selection and repetition constructs to achieve desired outcomes
• Stores data to and reads data from arrays
• Generates output to and reads input from the console window
• Reads data from and writes data to text file
• Manipulates string using Java API “String” class
• Handles basic errors
• Applies object-oriented concepts
This assignment is based on individual effort. You are required to design, develop and test a Game Cards management system for a game application.
Besides providing the required functionalities, your program should incorporate appropriate error handling. Comments are also to be inserted to improve program clarity. Before you start coding your program, you are strongly advised to carry out proper problem analysis and program design. You are required to use JDK 1.5 developer version or later.
This application allows the admin to
1. Admin login
2. Create a game card
3. Delete a game card
4. Edit a game card information
5. Search and display game cards information
6. Export game cards information
7. Change admin password
This application will have access to two text files.
The first text file (Admin.dat) contains the administrator-hashed password (SHA-256).
The second text file (GameCards.dat) contains the game card information in the following format
Zeus|God of the Sky|30|15|40|15
Poseidon|God of the Sea|20|50|15|15
Demeter|Goddess of Agriculture|55|25|15|5
Ares|God of War|20|10|10|60
Note: When a game card is created, all the elements power should add up to 100.
Your program should be able to handle error situations. For example where a game card name already existed (for Create a game card) or game card name not found (for delete game card). You should look out for other possible exceptions and handle them too.
For Export game card information requirement, the program should produce a file (GameCardsData.dat) with the following format:
CSCI213 Game Cards Management System
Game Card 1
Description: God of the Sky
Earth Element Power: 30
Water Element Power: 15
Air Element Power: 40
Fire Element Power: 15
Game Card 2
Description: God of the Sea
Earth Element Power: 20
Water Element Power: 50
Air Element Power: 15
Fire Element Power: 15