赞
踩
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.IO; using System.Linq; using System.Text; using System.Windows.Forms; namespace TextFile { public partial class FrmFile : Form { public FrmFile() { InitializeComponent(); } private void btnSave_Click(object sender, EventArgs e) { //封装数据 Student stu1 = new Student() { StudentName = this.txtName.Text.Trim(), StudentAge = Convert.ToInt32(this.txtAge.Text.Trim()), StudentGender = this.txtGender.Text.Trim(), StudentBirthday = Convert.ToDateTime(this.txtBirthday.Text.Trim()) }; //保存到文件 Directory.CreateDirectory(@"StudentInfo"); FileStream fs = new FileStream(@"StudentInfo\Student.txt", FileMode.Create); StreamWriter sw = new StreamWriter(fs); sw.WriteLine(stu1.StudentName); sw.WriteLine(stu1.StudentAge); sw.WriteLine(stu1.StudentGender); sw.WriteLine(stu1.StudentBirthday); sw.Close(); fs.Close(); MessageBox.Show(stu1.StudentName + "信息保存成功"); } private void button2_Click(object sender, EventArgs e) { FileStream fs = new FileStream(@"StudentInfo\Student.txt", FileMode.Open); StreamReader sr = new StreamReader(fs, Encoding.UTF8); //一行一行读取 Student duStudent = new Student() { StudentName = sr.ReadLine(), StudentAge = Convert.ToInt32(sr.ReadLine()), StudentGender = sr.ReadLine(), StudentBirthday = Convert.ToDateTime(sr.ReadLine()) }; //显示数据 this.txtName.Text = duStudent.StudentName; this.txtAge.Text = duStudent.StudentAge.ToString(); this.txtGender.Text = duStudent.StudentGender; this.txtBirthday.Text = duStudent.StudentBirthday.ToString(); } } }
//序列化保存对象 private void btnSerialize_Click(object sender, EventArgs e) { //封装数据 Student stu1 = new Student() { StudentName = this.txtName.Text.Trim(), StudentAge = Convert.ToInt32(this.txtAge.Text.Trim()), StudentGender = this.txtGender.Text.Trim(), StudentBirthday = Convert.ToDateTime(this.txtBirthday.Text.Trim()) }; //[1]创建文件流 FileStream fs = new FileStream("objStudent.stu", FileMode.Create); //[2]创建二进制格式化器 BinaryFormatter formatter = new BinaryFormatter(); //[3]调用序列化方法 formatter.Serialize(fs, stu1); //写入到哪里,以及要写入的内容 //[4]关闭文件流 fs.Close(); } //反序列化读取文件内容 private void btnDeserialize_Click(object sender, EventArgs e) { //1.创建文件流 FileStream fs = new FileStream("objStudent.stu", FileMode.Open); //2.创建二进制格式化器 BinaryFormatter formatter = new BinaryFormatter(); //3.调用反序列化方法 Student objStudent = (Student)formatter.Deserialize(fs); //4.关闭文件流 fs.Close(); this.txtName.Text = objStudent.StudentName; this.txtAge.Text = objStudent.StudentAge.ToString(); this.txtGender.Text = objStudent.StudentGender; this.txtBirthday.Text = objStudent.StudentBirthday.ToString(); }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。