package newexam;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
public class AccessMulti {
static String fileName = "d:/cf/015山东轻工业学院_XP_13考场.crp";
static int NUM = 10;
static File outDir = new File("d:/cf");
static File absoluteDir = new File(outDir.getAbsolutePath());
static Connection con = null;
// 类静态方法,完成对数据库连接等初始化工作
static {
if (!absoluteDir.exists()) {
System.out.println("正在创建文件夹");
absoluteDir.mkdirs();
}
}
/**
* 读取数据库中多选题,共10套,并给出答案。多选题表中第8个字段为答案,数字代表前几个为正确选项
*/
public static void getMulti() throws Exception {
DAOAccess dao = new DAOAccess(fileName);
con = dao.getConnection();
Statement stat = con.createStatement();
BufferedWriter out = new BufferedWriter(new FileWriter(new File(
absoluteDir, "Multi.txt")));
out.write("多选题答案为数字,表示前几项是正确的,如3,表示前三项是正确的。");
out.newLine();
int m;
for (m = 1; m <= NUM; m++) {
String sql = "select * from MultiSelect" + m
+ " Group by TestID Order By TestID ";
ResultSet res = stat.executeQuery(sql);
out.newLine();
out.write("*****************第" + m + "套题******************");
out.newLine();
int i = 1;
while (res.next()) {
int count = res.getInt(8);
out.write("" + i + "." + res.getString(2));
out.newLine();
out.write("" + "A) " + res.getString(3));
out.newLine();
out.write("" + "B) " + res.getString(4));
out.newLine();
out.write("" + "C) " + res.getString(5));
out.newLine();
out.write("" + "D) " + res.getString(6));
out.newLine();
out.write("" + "E) " + res.getString(7));
out.newLine();
out.write("答案:" + count);
out.newLine();
out.newLine();
i++;
}
}
stat.close();
out.close();
dao.close();
System.out.println("多选题创建成功,请检查!");
}
public static void main(String args[]) throws Exception {
getMulti();
}
}