C#编程,按行读取txt文档的一种方法。

版权声明:我不生产代码,我只是代码的搬运工。 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("存储文件成功!","保存文件");
            }

猜你喜欢

转载自blog.csdn.net/qq_43307934/article/details/86019094
今日推荐