一個粗陋的java圖書治理體系。本站提示廣大學習愛好者:(一個粗陋的java圖書治理體系)文章只能為提供參考,不一定能成為您想要的結果。以下是一個粗陋的java圖書治理體系正文
本文代碼為原創一個粗陋的治理體系,只做功效的測試。並沒有去完美一切應有的功效,只做了輸出輸入查找,僅供參考!
菜單部門:
import java.util.Scanner; public class Menu { int Min = 1; int Max = 3; public void getMenu(){ System.out.println("1、顯示/2、輸出/3、查找"); } public void getFindMenu(){ System.out.println("1、編號/2、書名/3、作者"); } public int setMenu(){ System.out.println("輸出序號:"); Scanner reader = new Scanner(System.in); int num = reader.nextInt(); if(num >= Min || num <= Max) return num; else return -1; } }
重點的治理部門:
import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.util.Scanner; import java.io.IOException; public class Book { public void find(){ Menu menu = new Menu(); menu.getFindMenu(); Scanner reader = new Scanner(System.in); int num = menu.setMenu(); switch(num){ case 1: System.out.println("請輸出編號"); Find(reader.next(), 0); break; case 2: System.out.println("請輸出書名"); Find(reader.next(), 1); break; case 3: System.out.println("請輸出作者"); Find(reader.next(), 2); break; } } public void Find(String s,int n){ try { Scanner in = new Scanner(new File("res/Book.txt")); while (in.hasNextLine()) { String str = in.nextLine(); String[] book = str.trim().split("#"); if(book[n].compareTo(s) == 0) System.out.println(book[0] +" "+ book[1] +" "+ book[2]); } } catch (FileNotFoundException e) { e.printStackTrace(); } } public String findNum(String s,int n){ try { Scanner in = new Scanner(new File("res/Book.txt")); while (in.hasNextLine()) { String str = in.nextLine(); String[] book = str.trim().split("#"); if(book[n].compareTo(s) == 0) return book[n]; } } catch (FileNotFoundException e) { e.printStackTrace(); } return "沒有找到"; } public String message(){ Scanner reader = new Scanner(System.in); String str = ""; String s = ""; System.out.println("請輸出編號"); str = reader.next(); if(findNum(str,0).compareTo("沒有找到") != 0){ System.out.println("此編號存在輸出毛病"); return "@@!!"; } s += str + "#"; System.out.println("請輸出書名"); str = reader.next(); s += str + "#"; System.out.println("請輸出作者"); str = reader.next(); s += str + "#\n"; return s; } public void setBook() { FileOutputStream fop = null; File file; String content = message(); if(content.compareTo("@@!!") == 0) return ; try { file = new File("res/Book.txt"); fop = new FileOutputStream(file,true); byte[] contentInBytes = content.getBytes(); fop.write(contentInBytes); fop.flush(); fop.close(); System.out.println("Done"); } catch (IOException e) { e.printStackTrace(); } finally { try { if (fop != null) { fop.close(); } } catch (IOException e) { e.printStackTrace(); } } } public void getBook() { try { Scanner in = new Scanner(new File("res/Book.txt")); while (in.hasNextLine()) { String str = in.nextLine(); splitt(str); } } catch (FileNotFoundException e) { e.printStackTrace(); } } public static String[] splitt(String str) { String[] book = str.trim().split("#"); for (int i = 0; i < book.length; i++) { System.out.println(book[i]); } System.out.println("\n*********************"); return book; } }
主函數部門:
public class ManageBook { public static void main(String[] agse){ Menu menu = new Menu(); Book book = new Book(); while(true){ menu.getMenu(); int num = menu.setMenu(); switch(num){ case 1: book.getBook(); break; case 2: book.setBook(); break; case 3: book.find(); break; case -1: System.out.println("輸出有誤"); break; } } } }
以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。