📄 resultcreater.cs
字号:
using System;
using System.Data;
using System.IO;
using ExamSystem.Common.Objects;
namespace ExamSystem.Common
{
/// <summary>
/// CreateResult 的摘要说明。
/// </summary>
public class ResultCreater
{
string modleRoot;
public ResultCreater(string modleRoot)
{
this.modleRoot=modleRoot;
}
private string getDetile(DataTable dt)
{
string strTitles="";
for(int i=0;i<dt.Rows.Count;i++)
{
strTitles+="<tr><td width=76% bgcolor=\"#CAD8DF\" valign= top>\n";
string tmpTitle=dt.Rows[i]["TopicDetil"].ToString();
//过滤字符
tmpTitle=tmpTitle.Replace("<","<");
tmpTitle=tmpTitle.Replace(">",">");
tmpTitle=tmpTitle.Replace("\n","<br>");
strTitles+="<br>"+(i+1).ToString()+"."+tmpTitle;
strTitles+="</td><td width=12% align=\"center\" bgcolor=\"#E3EAEE\" < Font Size = \"6\" > "+dt.Rows[i]["TopicAnwser"].ToString()+"</font></td>\n";
string color="Blue";
if(dt.Rows[i]["TopicAnwser"].ToString()!=dt.Rows[i]["myAnswer"].ToString())
{
color="Red";
}
strTitles+="<td width=12% align=\"center\" bgcolor=\"#F4F8F9\"><font color=\""+color+"\" size=\"6\">"+dt.Rows[i]["myAnswer"].ToString()+"</font></td>\n</tr>\n";
strTitles+="<tr><td width=100% align=\"center\" colspan=\"3\" height=\"1\" bgcolor=\"#ffffff\"></td></tr>";
}
return strTitles;
}
/// <summary>
/// 创建报告
/// </summary>
/// <param name="dt">考卷</param>
/// <param name="exam">考试信息</param>
/// <param name="score">成绩</param>
/// <param name="totle">总分</param>
/// <returns></returns>
public string createResult(DataTable dt,Exam exam,double score,double totle)
{
// if(!File.Exists(modleRoot))
// {
// return null;
// }
StreamReader reader=new StreamReader(modleRoot,System.Text.Encoding.Default);
string strResult="";
string tmpStr="";
while((tmpStr=reader.ReadLine())!=null)
{
if(tmpStr.IndexOf("《jtitle》")>=0)
{
tmpStr=tmpStr.Replace("《jtitle》",exam.ExamName);
}
if(tmpStr.IndexOf("《time》")>=0)
{
tmpStr=tmpStr.Replace("《time》",exam.ExamTime.ToString());
}
if(tmpStr.IndexOf("《sorce》")>=0)
{
tmpStr=tmpStr.Replace("《sorce》",totle.ToString());
}
if(tmpStr.IndexOf("《ptitle》")>=0)
{
tmpStr=tmpStr.Replace("《ptitle》",getDetile(dt));
}
if(tmpStr.IndexOf("《分数》")>=0)
{
tmpStr=tmpStr.Replace("《分数》",score.ToString());
}
strResult+=tmpStr;
}
reader.Close();
return strResult;
}
/// <summary>
/// 把数据写到本地
/// </summary>
/// <param name="date">数据</param>
/// <param name="root">路径</param>
public static void saveResult(string date,string root)
{
StreamWriter writer=new StreamWriter(root,false,System.Text.Encoding.Default);
writer.Write(date);
writer.Close();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -