⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paperdaoimpbyweb.java

📁 这是个可以进行多项选择的系统
💻 JAVA
字号:
/**
 * 
 */
package exam.dao;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;

import exam.model.Paper;
import exam.model.Question;

/**
 * @author 董晓炜
 *
 * Feb 13, 2009 10:54:54 AM
 */
public class PaperDaoImpByWeb implements PaperDao{
	private Socket s;
	
	public PaperDaoImpByWeb(Socket s){
		this.s=s;
	}
	public Paper getPaper(String subject){//从服务器端读取试卷文件,在客户端进行解析,包装成一张试卷
		PrintWriter pw=null;
		BufferedReader br=null;
		Paper p=null;
		try {
			pw = new PrintWriter(new OutputStreamWriter(s.getOutputStream(),"UTF-8"));
			pw.println("paper:"+subject);
			pw.flush();
			br=new BufferedReader(new InputStreamReader(s.getInputStream(),"UTF-8"));
			String str=null;
			List<String> sl=new ArrayList<String>();
			List<Question> ql=new ArrayList<Question>();
			do{	str=br.readLine();
				if(str.equals("isStop"))return null;
				if(str.equals("")){
					Question q=new Question(sl);
					ql.add(q);
					sl.clear();
					break;
				}
				if(str.equals("again"))continue;
				if(str.equals("stop"))continue;
				if("0123456789".indexOf(str.charAt(0))!=-1&&sl.size()!=0){
					Question q=new Question(sl);
					ql.add(q);
					sl.clear();

				}
				sl.add(str);
			}while(true);
			p=new Paper(ql);
			
		} catch (IOException e) {
			if(s!=null){
				try {
					e.printStackTrace();
					s.close();
				} catch (IOException e1) {
					// TODO Auto-generated catch block
					e1.printStackTrace();
				}
			}
		}
		return p;
		
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -