C# 按行读取txt记事本文件

时间:2021-04-16

  记事本中存储了学生名单,一行写一个学生姓名。

  通过FileStream、StreamReader来读取记事本文件,将读取的内容存放到DataTable中。

/// <summary>
/// DataTable显示选择的学生名单
/// </summary>
/// <returns></returns>
public static DataTable StuList()
{
DataTable dt = new DataTable();
dt.Columns.Add("学生姓名");
string sFilePath = string.Empty;

//// 学生名单的路径
sFilePath = Parameters.g_sStuListPath + frm.cblClass.SelectedItem;

//// 判断学生名单是否存在
if (!File.Exists(sFilePath))
{
MessageBox.Show("该学生名单文件不存在,请检查是否有误。");
return dt;
}

string sStuName = string.Empty;
FileStream fs = new FileStream(sFilePath, FileMode.Open);
//// "GB2312"用于显示中文字符,写其他的,中文会显示乱码
StreamReader reader = new StreamReader(fs, UnicodeEncoding.GetEncoding("GB2312"));

//// 一行一行读取
while ((sStuName = reader.ReadLine()) != null)
{
sStuName = sStuName.Trim().ToString();
DataRow dr = dt.NewRow();
dr["学生姓名"] = sStuName;
dt.Rows.Add(dr);
}

m_dtStu = dt;

//// 关闭文件流
fs.Close();
return dt;
}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章