首页 > 代码库 > C#--I/O流操作文本文件之StreamWrite类和StreamReader类

C#--I/O流操作文本文件之StreamWrite类和StreamReader类

使用I/O流操作文本文件时主要用到StreamWrite类和StreamRead类。


1.StreamWrite类


(1)StreamWrite类专门用来处理文本文件的类。能够方便地想文本文件里写入字符串,同一时候负责重要的转换和处理向FileStream对象写入工作。



(2)经常使用的属性

Encoding               获取将输出写入到当中的Encoding

Formatprovider         获取控制格式设置的对象

NewLine                获取或设置由当前TextWriter使用的行结束符字符串


(3)经常使用的方法

Close                  关闭当前的StringWriter和基础流

Write                  写入到StringWriter的此实例中

WriteLine              写入重载參数指定的某些数据,后跟行结束符




2.StreamReader类


(1)专门用来读取文本文件的类。


(2)经常使用的方法

Close                  关闭StringReader

Read                   读取输入字符串中的下一个字符或下一组字符

ReadLine               从基础字符串中读取一行

ReadToEnd              将整个流或从流的当前位置到流的结尾作为字符串读取




3.实例代码--怎样对文本文件进行写入和读取

(1)控件解释

SaveFileDialog控件(一个)--显示“另存为”对话框

OpenFileDialog控件(一个)--显示“打开”对话框

TextBox控件(一个)--输入要写入文本文件的内容和显示选中文本文件的内容

Button控件(两个)--分别用来打开"另存为"和"打开"对话框


(2)重要代码

        private void button1_Click(object sender, EventArgs e)
        {
            if (textBox1.Text == string.Empty)
            {
                MessageBox.Show("要写入的文件内容不能为空");
            }
            else
            {
                //设置保存文件的格式
                saveFileDialog1.Filter = "文本文件(*.txt)|*.txt";
                if (saveFileDialog1.ShowDialog() == DialogResult.OK)
                {
                    //使用“另存为”对话框中输入的文件名称实例化StreamWriter对象
                    StreamWriter sw = new StreamWriter(saveFileDialog1.FileName, true);
                    //向创建的文件里写入内容
                    sw.WriteLine(textBox1.Text);
                    //关闭当前文件写入流
                    sw.Close();
                    textBox1.Text = string.Empty;
                }
            }
        }
        private void button2_Click(object sender, EventArgs e)
        {
            //设置打开文件的格式
            openFileDialog1.Filter = "文本文件(*.txt)|*.txt";
            if (openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                textBox1.Text = string.Empty;
                //使用“打开”对话框中选择的文件实例化StreamReader对象
                StreamReader sr = new StreamReader(openFileDialog1.FileName);
                //调用ReadToEnd方法读取选中文件的所有内容
                textBox1.Text = sr.ReadToEnd();
                //关闭当前文件读取流
                sr.Close();
            }
        }


(3)执行截图:

技术分享


点击读取出来打开框,即前面所说的SaveFileDialog控件的显示

技术分享


点击写入button,出来另存为框,即前面所说的OpenFileDialog控件的显示

技术分享



C#--I/O流操作文本文件之StreamWrite类和StreamReader类