package com.entriy;
import java.io.Serializable;
public class film implements Serializable {
private String filename;//电影名
private String date;//观看时间
private String sno;//座位号
public String getFilename() {
return filename;
}
public void setFilename(String filename) {
this.filename = filename;
}
public String getDate() {
return date;
}
public void setDate(String date) {
this.date = date;
}
public String getSno() {
return sno;
}
public void setSno(String sno) {
this.sno = sno;
}
public film(String filename, String date, String sno) {
super();
this.filename = filename;
this.date = date;
this.sno = sno;
}
public film() {
super();
}
}
package com.entriy;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.util.ArrayList;
import java.util.Scanner;
public class ticket {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
File file = new File("D:\\a\\movie.txt");
String con = "";
do {
System.out.println("==欢迎来到 幻影影院 ==");
System.out.println("1.购票\n2.退出\n请选择:");
Scanner sca = new Scanner(System.in);
int num = sca.nextInt();
switch (num) {
case 1:
sell();
break;
case 2:
System.out.println("謝謝使用");
System.exit(0);
break;
}
System.out.println("是否继续购票 y\\n ");
con = sca.next();
} while (con.equals("y"));
}
public static void init() throws Exception {
File file = new File("d:\\a\\movie.txt");
if (!file.exists()) {
file.createNewFile();
ArrayList<film> list = new ArrayList<film>();
FileOutputStream fos = new FileOutputStream(file);
ObjectOutputStream op = new ObjectOutputStream(fos);
op.writeObject(list);
op.close();
}
}
public static void sell() throws Exception {
File file = new File("D:\\a\\movie.txt");
if (!file.exists()) {
file.createNewFile();
}
Scanner sca = new Scanner(System.in);
System.out.println("请输入要观看的电影");
String fname = sca.next();
System.out.println("请输入要观看的电影时间");
String date = sca.next();
System.out.println("请输入座位号 (几排)-(几号)");
String sno = sca.next();
FileInputStream fis = new FileInputStream(file);
ObjectInputStream ois = new ObjectInputStream(fis);
ArrayList<film> list = (ArrayList<film>) ois.readObject();
boolean flag = false;
for (int j = 0; j < list.size(); j++) {
if(((list.get(j).getFilename()).equals(fname)
&& (list.get(j).getDate()).equals(date) && (list.get(j)
.getSno()).equals(sno))) {
System.out.println("此票已卖出,请重新选择");
sell();
flag = true;
break;
}
}if (flag == false) {
System.out.println("购票成功");
}
film film = new film(fname, date, sno);
list.add(film);
FileOutputStream fos = new FileOutputStream(file);
ObjectOutputStream op = new ObjectOutputStream(fos);
op.writeObject(list);
op.close();
ois.close();
}
}