java小项目(文件读取)标准化考试

标准化考试
标准化试题文件的格式要求如下:
每道题目提供A、B、C、D四个选择(单项选择)。
两道题目之间是用减号(-)尾加前一题目的答案分隔(例如:----D-----)



1. 北京奥运是什么时间开幕的?
   A.2008-08-08  B. 2008-08-01 
   C.2008-10-01 D. 2008-07-08
------A------
2. 下列哪个国家不属于亚洲?
   A.沙特  B.印度 C.巴西  D.越南
------C------
3. 2010年世界杯是在哪个国家举行的?
   A.美国  B.英国 C.南非  D.巴西
------C-----
4.下列哪些动物属于猫科动物?
   A.狗    B.犀牛 C.大象  D.狮子
------D-----


例图:



code :

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

public class Dome {
	
	public static void main(String[] args) {
		int sum=0;
		File file=new File("src\\homework","subject.txt");
		try {
			if(!file.exists())
				file.createNewFile();
			FileReader fr =new FileReader(file);
			BufferedReader br=new BufferedReader(fr);
			String aline;
			while((aline=br.readLine())!=null) {
				String  str = new String(aline);
				if(str.subSequence(0,1).equals("-")) {
					String ans =str.substring(6, 7);
					System.out.println();
					System.out.print("请输入选则的答案:");
					Scanner sc=new Scanner(System.in);
					String ans1=sc.nextLine();
					if(ans.equals(ans1))sum++;
				}else {
					System.out.println(str);
				}
			}
			br.close();
			System.out.println("最后的得分:"+sum);
		} catch (IOException e) {
			// TODO: handle exception
			e.printStackTrace();
		}
			
	}
}

运行后图片:



读取的的文件生成代码:

import java.io.*;  
public class test  
{  
    public static void main(String[] args) throws IOException  
    {  
    	File file = new File("src\\homework","subject.txt");
        BufferedReader buf = new BufferedReader (new InputStreamReader(System.in));  
        BufferedWriter buff = new BufferedWriter(new FileWriter(file));  
        String str = buf.readLine();  
        while(!str.equals("exit"))  
        {  
            buff.write(str);  
            buff.newLine();  
            str = buf.readLine();  
        }  
        buf.close();  
        buff.close();  
    }  
}


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值