三天打渔两天晒网小程序

//三天打鱼,两天晒网 从2010 01 01 开始 输入时间判断是在打鱼还是在晒网
/*
 * 设计思路:本人运用 javaAPI类中的Date类子类 SimpleDateFormat处理时间
 * 设置初始时间
 * 正则表达式定义规则
 * 键盘录入 时间
 * 程序作出判断
 * 
 **/

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class Demo1 {

	public static void main(String[] args) throws ParseException  {
		 
	    
	       SimpleDateFormat sdf = new SimpleDateFormat("yyyy MM dd");//定义规则 
	      String s = "2010 01 01";
	      Date d= new Date();
	          d=(Date)sdf.parse(s);//把字符串内容转化成Data  2010 01 01 
	     //  System.out.println(d);
	       
	       /*String s1 = sdf.format(d);//format格式化将Date根据规则格式化成String 
			System.out.println(s1);*/
	       
	       System.out.println("请输入日期(2010 年1月1日后 格式 yyyy_MM_dd)");
	       Scanner sc= new Scanner(System.in);
	       String s2= sc.nextLine();
	       Date d2= new Date();
	       try {
			d2=(Date)sdf.parse(s2);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			System.out.println("输入格式有误!");//给出提示
			//e.printStackTrace();
			System.exit(0);
		}
	       
	      long l =(d2.getTime()-d.getTime())/(1000*60*24*60);//用两个时间的毫秒值相减 获得天数
	      int i=(int )(l%5);
	      switch(i) {
	      case 1:{ System.out.println("今天打渔!"); break;}
	      case 2:{System.out.println("今天打渔!"); break;}
	      case 3:{System.out.println("今天打渔!"); break;}
	      case 4:{System.out.println("今天晒网!"); break;}
	      case 0:{}System.out.println("今天打渔!"); break;
	      }
	      
	}

}

升级版:(加入文件操作)使用文件进行数据测试。如将日期 20100101   20111214  等数据保存在in.txt文件中,程序读入in.dat文件进行判定,并将结果输出至out.txt文件。

/*
 * 设计思路:本人运用 javaAPI类中的Date类子类 SimpleDateFormat处理时间
 * 设置初始时间
 * 定义规则
 * 文件读入时间
 * 程序作出判断
 * 结果写入文件
 **/
public class Demo1 {

	public static void main(String[] args) throws ParseException, IOException  {
		
		 
		 
	    
	       SimpleDateFormat sdf = new SimpleDateFormat("yyyy MM dd");//定义规则 
	      String s = "2010 01 01";
	      Date d= new Date();
	          d=(Date)sdf.parse(s);//把字符串内容转化成Data  2010 01 01 
	     //  System.out.println(d);
	       
	      
	       
	       //System.out.println("请输入日期(2010 年1月1日后 格式 yyyy_MM_dd)");
	          System.out.println("用文件读入 时间");
	      
	       String s2= getFile();
	       Date d2= new Date();
	       try {
			d2=(Date)sdf.parse(s2);
		} catch (ParseException e) {
			// TODO Auto-generated catch block
			System.out.println("输入格式有误!");//给出提示
			//e.printStackTrace();
			System.exit(0);
		}
	       
	      long l =(d2.getTime()-d.getTime())/(1000*60*24*60);//用两个时间的毫秒值相减 获得天数
	      int i=(int )(l%5);
	      String outs = null;
	      switch(i) {
	      case 1:{ outs="今天打渔!";
	    	  System.out.println(outs); break;}
	      case 2:{ outs="今天打渔!";
    	  System.out.println(outs); break;}
	      case 3:{ outs="今天打渔!";
    	  System.out.println(outs); break;}
	      case 4:{ outs="今天晒网!";
    	  System.out.println(outs); break;}
	      case 0:{ outs="今天晒网!";
    	  System.out.println(outs); break;}
	      }
	      setFile(outs);
	}
public static String getFile () { //文件读入函数
			String str=null;//定义一个字符串类型变量str
			try {//try代码块,当发生异常时会转到catch代码块中
	            //读取指定的文件
	            BufferedReader in = new BufferedReader(new FileReader("E:\\eclipes 英文版工作空间\\程序设计作业\\in.dat"));
	            
	            str = in.readLine();
	         
	            System.out.println(str);//输出str
	            in.close();
	           
	        } catch (IOException e) {//当try代码块有异常时转到catch代码块
	        	System.out.println("读取有误");
	            e.printStackTrace();//printStackTrace()方法是打印异常信息在程序中出错的位置及原因
	        }
			
			return  str; 
			 
		}
public static void setFile (String s) throws IOException { //文件写入函数
			               byte[] bs = s.getBytes();//定义字节数组用来当作缓冲区
			                 
			
			FileOutputStream fos=new FileOutputStream("E:\\eclipes 英文版工作空间\\程序设计作业\\out.txt");
			
		        try {
					fos.write(bs);
				} catch (IOException e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}//从缓冲区字节数组中以字节流形式取出
		        fos.close();//关闭读取流
		        
		        
		        File file=new File("E:\\\\eclipes 英文版工作空间\\\\程序设计作业\\\\out.txt");//创建文件对象
		        if(file.exists()){//if语句的条件,调用exists方法判断文件是否存在
		             System.out.println("文件成功读入到指定路径下");//若文件存在,则输出文件存在
		        }
		        else{//否则
		             System.out.println("输出文件不存在");//输出文件不存在
		        }
			
			
		}

}

 运行结果截图

 打开TXT

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值