Write a program to create a class to handle the enquiry details to tourism. The class should provide the following functionalities:
- A menu should be displayed that allows the user to intiate enquiry, view enquiry, and exit the menu.
-If the option to intitate enquiry is selected, the program should allow the user to enter the enquiry details, such as name, contact number, address, enquiry category, and description of the enquiry. In addition, the enquiry categories will be Prices, Locations, and packages. Further, the entered details should be stored in the Enquiry.txt file.
-If the option to view query details is selected, the name of the user, whose details need to be viewed, should be entered. If the name exists in the Enquiry.txt file , the details should be displayed. Otherwise, an error message should be displayed.
- If the option to exit menu is selected, the program must terminate.
SOLUTION
import java . io . BufferReader;
import java . io . BufferReader;
import java . io . FileReader;
import java . io . FileWriter;
import java . io . Scanner;
public class EnquiryForm
{
String enquiryrDetails [] = new String [5];
public void showMenu () {
int option;
Scanner sc = new Scanner (System . in);
System.out.println ("\n-----------Menu-----------");
System.out.println ("1. Initiate Enqiury");
System.out.println ("2. View Enquiry");
System.out.println ("3. Exit");
System.out.println ("\nChoose the option: ");
option = sc . nextInt ();
switch (option) {
case 1:
intEnq ();
showMenu ();
break;
case 2:
viewEnq ();
showMenu ();
break;
case 3:
exitMenu ();
break;
default:
System.out.println ("Incorrect menu option");
showMenu ();
break;
}
}
public void initEnq () {
char choice = 'y';
do {
Scanner sc = new Scanner (System . in(;
System.out.println ("Enter Name: ");
enquiryDetails [0] = sc . nextLine () . to LowerCase () + ",";
System.out.print ("Enter Contact No: ");
enquiryDetails [1] = sc . nextLine () + ",";
System.out,print ("Enter Address: () + ",";
System.out.print ("Enter Enquiry Category
(Prices/Local/Packages) : ");
enquiryDetails [3] = sc . nextLine () + ",";
System.out.print ("Enter Enquiry Description: ");
enquiryDetails [4] = sc . nextLine () + ",";
try {
FileWriter fos = new FileWriter
("Enquiry . txt ", true);
BufferedWWriter bw = new BufferedWriter
(fos);
for (int i = 0; i < enquiryDetails . length
i++) {
bw . write (enquiryDetails [i]);
}
bw . newLine ();
bw . close ();
fos . close ();
} catch (Exception e) {
System.out.println (e);
}
System.out.print ("\nDo you want to initiate more enquiry: ");
String ch = sc . next () . toLowerCase ();
choice = ch . charAt (0);
} while (choice == 'y');
}
public void viewEnq () {
Scanner sc = new Scanner (System . in);
String name;
int flag = 0;
System.out.print("Enter the name of the user to view the details: ");
name = sc . nextLine () . toLowerCase ();
try (BufferedReader br = new BufferedReader(new
FileReader("Enquiry.txt "))) {
String s;
while ((s = br.readLine()) != null) {
String plitData[] = s.split(",");
if (splitData[O].equals(name)) {
System.out.println("Enquiry Detail:");
System.out.println
("=================================")
System.out.println("Name:
" + splitData[O] );
System.out.println("contact No:
" + splitData[1] );
System.out.println("Address:
" + splitData[2] );
System.out.println("Enquiry Catagory:
" + splitData[3] );
System.out.println ("Enquiry Description: " + splitData [4]);
System.out.println
("===================================");
flag = 1;
}
}
if (flag == 0) {
System.out.println (name + " does not exists");
}
} catch (Exception e) {
}
public void wxitMenu () {
System.exit (0);
}
public static void main (String [] args) {
EnqiuryForm obj = new EnquiryForm ();
obj . showMenu ();
}
}
- A menu should be displayed that allows the user to intiate enquiry, view enquiry, and exit the menu.
-If the option to intitate enquiry is selected, the program should allow the user to enter the enquiry details, such as name, contact number, address, enquiry category, and description of the enquiry. In addition, the enquiry categories will be Prices, Locations, and packages. Further, the entered details should be stored in the Enquiry.txt file.
-If the option to view query details is selected, the name of the user, whose details need to be viewed, should be entered. If the name exists in the Enquiry.txt file , the details should be displayed. Otherwise, an error message should be displayed.
- If the option to exit menu is selected, the program must terminate.
SOLUTION
import java . io . BufferReader;
import java . io . BufferReader;
import java . io . FileReader;
import java . io . FileWriter;
import java . io . Scanner;
public class EnquiryForm
{
String enquiryrDetails [] = new String [5];
public void showMenu () {
int option;
Scanner sc = new Scanner (System . in);
System.out.println ("\n-----------Menu-----------");
System.out.println ("1. Initiate Enqiury");
System.out.println ("2. View Enquiry");
System.out.println ("3. Exit");
System.out.println ("\nChoose the option: ");
option = sc . nextInt ();
switch (option) {
case 1:
intEnq ();
showMenu ();
break;
case 2:
viewEnq ();
showMenu ();
break;
case 3:
exitMenu ();
break;
default:
System.out.println ("Incorrect menu option");
showMenu ();
break;
}
}
public void initEnq () {
char choice = 'y';
do {
Scanner sc = new Scanner (System . in(;
System.out.println ("Enter Name: ");
enquiryDetails [0] = sc . nextLine () . to LowerCase () + ",";
System.out.print ("Enter Contact No: ");
enquiryDetails [1] = sc . nextLine () + ",";
System.out,print ("Enter Address: () + ",";
System.out.print ("Enter Enquiry Category
(Prices/Local/Packages) : ");
enquiryDetails [3] = sc . nextLine () + ",";
System.out.print ("Enter Enquiry Description: ");
enquiryDetails [4] = sc . nextLine () + ",";
try {
FileWriter fos = new FileWriter
("Enquiry . txt ", true);
BufferedWWriter bw = new BufferedWriter
(fos);
for (int i = 0; i < enquiryDetails . length
i++) {
bw . write (enquiryDetails [i]);
}
bw . newLine ();
bw . close ();
fos . close ();
} catch (Exception e) {
System.out.println (e);
}
System.out.print ("\nDo you want to initiate more enquiry: ");
String ch = sc . next () . toLowerCase ();
choice = ch . charAt (0);
} while (choice == 'y');
}
public void viewEnq () {
Scanner sc = new Scanner (System . in);
String name;
int flag = 0;
System.out.print("Enter the name of the user to view the details: ");
name = sc . nextLine () . toLowerCase ();
try (BufferedReader br = new BufferedReader(new
FileReader("Enquiry.txt "))) {
String s;
while ((s = br.readLine()) != null) {
String plitData[] = s.split(",");
if (splitData[O].equals(name)) {
System.out.println("Enquiry Detail:");
System.out.println
("=================================")
System.out.println("Name:
" + splitData[O] );
System.out.println("contact No:
" + splitData[1] );
System.out.println("Address:
" + splitData[2] );
System.out.println("Enquiry Catagory:
" + splitData[3] );
System.out.println ("Enquiry Description: " + splitData [4]);
System.out.println
("===================================");
flag = 1;
}
}
if (flag == 0) {
System.out.println (name + " does not exists");
}
} catch (Exception e) {
}
public void wxitMenu () {
System.exit (0);
}
public static void main (String [] args) {
EnqiuryForm obj = new EnquiryForm ();
obj . showMenu ();
}
}
No comments:
Post a Comment