private void button1_Click(object sender, EventArgs e) { //输出题目 ReadWord rw = new ReadWord(); LCS <string> lcs = new LCS <string>(rw.readList(), rw.readList1()); msg.Text = lcs.ToString(); msg.Visible = true; //先清除所有行 dataGridView1.Rows.Clear(); //初始化fileRead获取文件 fileRead fr = new fileRead(); writeMsg wm = new writeMsg(); wm.road(textBox1.Text); fileWtite fw = new fileWtite(); fw.writefile(); fr.readfile(); //扫描路径 DirectoryInfo dir = new DirectoryInfo(textBox1.Text); FileSystemInfo[] files = dir.GetFileSystemInfos(); int index = files.Length; int[] score = fileRead.score.ToArray(); string[] name = fileRead.name.ToArray(); string[] id = fileRead.id.ToArray(); int i; for (int a = 0; a < index; a++) { i = dataGridView1.Rows.Add(); dataGridView1.Rows[i].Cells[0].Value = id[a]; dataGridView1.Rows[i].Cells[1].Value = name[a]; dataGridView1.Rows[i].Cells[2].Value = score[a]; } }
public void writefile() { FileStream F = new FileStream("C:\\Users\\lenovo\\Desktop\\18wang\\CSharp\\test4\\file_test4\\result.dat", FileMode.Truncate, FileAccess.ReadWrite); //int i = 2018; //string str = "成都大学CDDX"; //初始化Readword ReadWord rw = new ReadWord(); //初始化writeMsg writeMsg wm = new writeMsg(); LCS <string> lcs = new LCS <string>(rw.readList(), rw.readList1()); LCS <string> lcs1 = new LCS <string>(rw.readList(), rw.readList2()); LCS <string> lcs2 = new LCS <string>(rw.readList(), rw.readList3()); LCS <string> lcs3 = new LCS <string>(rw.readList(), rw.readList4()); int[] count = new int[] { lcs1.iDemo(), lcs2.iDemo(), lcs3.iDemo() }; //版本号的字符串 string str = "MYWORD1.0"; byte[] strArray = System.Text.Encoding.Default.GetBytes(str); int strlength = strArray.Length; //考试要求的字符串 string require = lcs.Demo(); byte[] reArray = System.Text.Encoding.Default.GetBytes(require); int relength = reArray.Length; //名字的字符串数组 string path = writeMsg.Path; string[] sname = wm.sname(path); //ID的字符串数组 string[] sid = wm.sid(path); //c是考生数量 int c = writeMsg.count; //写版本号 byte[] istrlength = BitConverter.GetBytes(strlength); F.Write(istrlength, 0, 4); F.Write(strArray, 0, strlength); //写考试要求 byte[] irelength = BitConverter.GetBytes(relength); F.Write(irelength, 0, 4); F.Write(reArray, 0, relength); //写考生数量 byte[] cbuffer = BitConverter.GetBytes(c); F.Write(cbuffer, 0, cbuffer.Length); //写考生信息 for (int a = 0; a < sid.Length; a++) { byte[] idArray = System.Text.Encoding.Default.GetBytes(sid[a]); int idlength = idArray.Length; byte[] nameArray = System.Text.Encoding.Default.GetBytes(sname[a]); int namelength = nameArray.Length; //每个考生总字节数 int num = idlength + namelength + count[a].ToString().Length; //写总数 byte[] numbuffer = BitConverter.GetBytes(num); F.Write(numbuffer, 0, numbuffer.Length); //写id byte[] iidlength = BitConverter.GetBytes(idlength); F.Write(iidlength, 0, 4); F.Write(idArray, 0, idlength); //写name byte[] inamelength = BitConverter.GetBytes(namelength); F.Write(inamelength, 0, 4); F.Write(nameArray, 0, namelength); //写成绩 byte[] scorebuffer = BitConverter.GetBytes(count[a]); F.Write(scorebuffer, 0, scorebuffer.Length); } //F.Position = 0; F.Close(); }
public void readfile() { FileStream F = new FileStream("C:\\Users\\lenovo\\Desktop\\18wang\\CSharp\\test4\\file_test4\\result.dat", FileMode.Open, FileAccess.Read); F.Position = 0; //读版本号 byte[] istrlength = new byte[4]; F.Read(istrlength, 0, 4); int strlength = BitConverter.ToInt32(istrlength, 0); byte[] strArrayread = new byte[strlength]; F.Read(strArrayread, 0, strlength); string strRead = System.Text.Encoding.Default.GetString(strArrayread); //读考试要求 byte[] irelength = new byte[4]; F.Read(irelength, 0, 4); int relength = BitConverter.ToInt32(irelength, 0); byte[] reArrayread = new byte[relength]; F.Read(reArrayread, 0, relength); string reRead = System.Text.Encoding.Default.GetString(reArrayread); //读考生数量 byte[] cbuffer = new byte[4]; F.Read(cbuffer, 0, cbuffer.Length); int cread = BitConverter.ToInt32(cbuffer, 0); //读考生信息 writeMsg wm = new writeMsg(); int n = writeMsg.count; int[] len = new int[n]; int[] num = new int[n]; string[] namestr = new string[n]; string[] idstr = new string[n]; int[] scoreint = new int[n]; for (int a = 0; a < n; a++) { //总字节数 byte[] numbuffer = new byte[4]; F.Read(numbuffer, 0, numbuffer.Length); num[a] = BitConverter.ToInt32(numbuffer, 0); //ID byte[] iidstr = new byte[4]; F.Read(iidstr, 0, 4); int lenid = BitConverter.ToInt32(iidstr, 0); byte[] idArray = new byte[lenid]; F.Read(idArray, 0, lenid); idstr[a] = System.Text.Encoding.Default.GetString(idArray); //name byte[] inamestr = new byte[4]; F.Read(inamestr, 0, 4); int lenna = BitConverter.ToInt32(inamestr, 0); byte[] nameArray = new byte[lenna]; F.Read(nameArray, 0, lenna); namestr[a] = System.Text.Encoding.Default.GetString(nameArray); //score byte[] iscore = new byte[4]; F.Read(iscore, 0, iscore.Length); scoreint[a] = BitConverter.ToInt32(iscore, 0); } id = new List <string>(idstr); name = new List <string>(namestr); score = new List <int>(scoreint); F.Close(); }