版权声明:我不生产代码,我只是代码的搬运工。 https://blog.csdn.net/qq_43307934/article/details/86019094
1、如下为事例代码:
其中一定要注意的事编码规则那个地方,如果文档中有汉字,没有选择正确的编码规则,那么读取的信息,汉字是乱码。
Encoding.Default,指默认的编码规则,可改变点后面的规则
一般推荐:GB2312
StreamReader sr=new StreamReader(fs,System.Text.Encoding.GetEncoding("GB2312"));
首先添加引用:
然后代码:
Stream myStream = null;
OpenFileDialog openFileDialog1 = new OpenFileDialog();
//指定路径
openFileDialog1.InitialDirectory = @"D:\";
//可选的文件类型
openFileDialog1.Filter = "ext files (*.txt)|*.txt";
//如果有多个可选文件类型,默认是第几个,从1开始。
openFileDialog1.FilterIndex = 1;
openFileDialog1.RestoreDirectory = true;
if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
try
{
//可通过string path = windowsfile.FileName来获取打开的文档路径
if ((myStream = openFileDialog1.OpenFile()) != null)
{
//xaml_text是控件名
xaml_text.Text = string.Empty;
//编码规则
StreamReader st = new StreamReader(openFileDialog1.FileName, Encoding.Default);
string str = st.ReadLine();
while (str != null)
{
xaml_text.AppendText(str);
xaml_text.AppendText("\n");
str = st.ReadLine();
}
}
}
catch (Exception ex)
{
System.Windows.MessageBox.Show("打开文件出错:" + ex.Message);
}
}
2、保存文档
SaveFileDialog saveFileDialog1 = new SaveFileDialog();
saveFileDialog1.InitialDirectory = "d:\\";
saveFileDialog1.Filter = "ext files (*.txt)|*.txt";
saveFileDialog1.FilterIndex = 1;
saveFileDialog1.RestoreDirectory = true;
DialogResult dr = saveFileDialog1.ShowDialog();
if (dr == DialogResult.OK && saveFileDialog1.FileName.Length > 0)
{
//richTextBox1是控件名。
richTextBox1.SaveFile(saveFileDialog1.FileName,RichTextBoxStreamType.PlainText);
MessageBox.Show("存储文件成功!","保存文件");
}