首页 > 代码库 > C# 文件读写

C# 文件读写

读取文件原则上非常简单,但它不是通过FileInfo和DirectoryInfo来完成的,关于FileInfo和DirectoryInfo请参考C# 文件和文件夹操作,在.Net Framework4.5中可以通过File类来读写文件,在.Net Framework2.0推出之前,读写文件是相当费劲的,但是在.Net Framework2.0推出之后,它对File类进行了扩展,只要编写一行代码,就能对文件进行读写,下面通过一个窗体应用程序来展示文件的读写功能。

1、文件读取

技术分享

a、通过File类的静态方法ReadAllText()进行文件的读取。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FileReadWrite
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ReadFile();
        }
        protected void ReadFile()
        {
            if (string.IsNullOrEmpty(textBox1.Text))
            {
                MessageBox.Show("请输入文件路径!");
            }
            else
            {
                string res = File.ReadAllText(textBox1.Text,Encoding.Default);
                textBox2.Text = res;
            }
        }
    }
}

技术分享

b、通过File类的静态方法ReadAllLines()进行文件的读取,代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FileReadWrite
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ReadFile();
        }
        protected void ReadFile()
        {
            if (string.IsNullOrEmpty(textBox1.Text))
            {
                MessageBox.Show("请输入文件路径!");
            }
            else
            {
                string[] res = File.ReadAllLines(textBox1.Text,Encoding.Default);
                StringBuilder result = new StringBuilder();
                foreach (string re in res)
                {
                    result.Append(re);
                }
                textBox2.Text = result.ToString();
            }
        }
    }
}

技术分享

c、通过File类的静态方法ReadAllBytes()进行文件的读取,代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace FileReadWrite
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ReadFile();
        }
        protected void ReadFile()
        {
            if (string.IsNullOrEmpty(textBox1.Text))
            {
                MessageBox.Show("请输入文件路径!");
            }
            else
            {
                byte[] res = File.ReadAllBytes(textBox1.Text);
                StringBuilder sb = new StringBuilder();
                foreach (var b in res)
                {
                    sb.Append(b.ToString());
                }
                textBox2.Text = sb.ToString();
            }
        }
    }
}

技术分享

 

2、文件写入

File提供了ReadAllBytes()、ReadAllLines、ReadAll

C# 文件读写