1、先是去读txt文件StreamReader sr = new StreamReader(textBox4.Text, Encoding.GetEncoding("gb2312"));
string _txtContent = sr.ReadToEnd();
richTextBox1.Text = _txtContent;//显示正常2、对文件分割保存,例如分割一个txt文件成50份 Byte[] bs = Encoding.GetEncoding("gb2312").GetBytes(txtContent.Substring(k * zhengshu, zhengshu).ToCharArray());
string txtContentSub = Encoding.GetEncoding("gb2312").GetString(bs);
StreamWriter sw = new StreamWriter(textBox1.Text + "\\" + textBox4.Text.Substring(textBox4.Text.LastIndexOf("\\") + 1, (textBox4.Text.LastIndexOf(".") - textBox4.Text.LastIndexOf("\\") - 1)) + (k + 1).ToString() + ".txt", false);
if (k == n - 1)
{
sw.WriteLine(txtContent.Substring((n - 1) * zhengshu));
}
else
{
sw.WriteLine(txtContentSub);
}
sw.Close();进行上面的代码后,新生成的txt文件显示正常
但是,当用程序打开生成之后的txt文件时显示乱码,这是什么原因??应该怎么修改
读取通过程序分割之后的txt文件StreamReader sr = new StreamReader(textBox4.Text, Encoding.GetEncoding("gb2312"));
string _txtContent = sr.ReadToEnd();
richTextBox1.Text = _txtContent;//显示乱码
string _txtContent = sr.ReadToEnd();
richTextBox1.Text = _txtContent;//显示正常2、对文件分割保存,例如分割一个txt文件成50份 Byte[] bs = Encoding.GetEncoding("gb2312").GetBytes(txtContent.Substring(k * zhengshu, zhengshu).ToCharArray());
string txtContentSub = Encoding.GetEncoding("gb2312").GetString(bs);
StreamWriter sw = new StreamWriter(textBox1.Text + "\\" + textBox4.Text.Substring(textBox4.Text.LastIndexOf("\\") + 1, (textBox4.Text.LastIndexOf(".") - textBox4.Text.LastIndexOf("\\") - 1)) + (k + 1).ToString() + ".txt", false);
if (k == n - 1)
{
sw.WriteLine(txtContent.Substring((n - 1) * zhengshu));
}
else
{
sw.WriteLine(txtContentSub);
}
sw.Close();进行上面的代码后,新生成的txt文件显示正常
但是,当用程序打开生成之后的txt文件时显示乱码,这是什么原因??应该怎么修改
读取通过程序分割之后的txt文件StreamReader sr = new StreamReader(textBox4.Text, Encoding.GetEncoding("gb2312"));
string _txtContent = sr.ReadToEnd();
richTextBox1.Text = _txtContent;//显示乱码
ding 编码方式gb2312换成utf-8
试过utf-8不管用
你的那里就没加上……