CSharp学习笔记之八 文件的读写

在我们的程序的编写过程中,总避免不了对文件的读写,比如说要读取一个软件的配置,这时候不就需要我么来设计的文件的读写么,但是对于C#来说,是如何对文件进行读写的呢。下面的我们来看一个列子:

    class Test
    {
        static void Main(string[] args)
        {
            string filePath = @"test.txt";

            string text = "A class is the most powerful data type in C#. Like a structure,";
            string result; 

            try
            {
                File.WriteAllText(filePath, text);
                Console.WriteLine("文件写入成功");
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.ToString());
            	
            }

            try
            {
                result = File.ReadAllText(filePath);
                Console.WriteLine(result);
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.ToString());
            }

            Console.ReadKey();
        }
    }


        对于该例子,这里是是调用了System.IO.File类中的方法进行的一个读写。其当然这里的使用的是WriteAllText 和ReadAllText,其实对于这个文件的类还有其他的很多的方法进行读写文件的。下面给在MSDN中给出的该类中读写文件的其他的方法:

 

当然这些都只仅仅是通过File这个类来进行文件的读与写的。对于C#来说其实还存在有其他的对文件的读写的方法。

还有另外的就是FileStream这个类,通过这个类来对文件进行的一个读与写的。

其实FileStream类是从System.IO.Stream这个类进行派生的一个类,顾名思义,这个类是是说的一个文件流的。什么是文件什么是文件流呢,我来举一个例子,比如所你的电脑里面有一个.txt文件,这个东西,就是文件,但是这个txt中的东西是怎么存放的呢,大家都知道文件计算机存储东西都是使用的一个01流来存储一些东西的,这些东西就是所谓的文件流。

如何使用这个类来进行文件读写呢。先看下面的这个例子

 public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private async void Button_Click(object sender, RoutedEventArgs e)
        {
            UnicodeEncoding uniencoding = new UnicodeEncoding();
            string filename = @"c:\Users\exampleuser\Documents\userinputlog.txt";

            byte[] result = uniencoding.GetBytes(UserInput.Text);

            using (FileStream SourceStream = File.Open(filename, FileMode.OpenOrCreate))
            {
                SourceStream.Seek(0, SeekOrigin.End);
                await SourceStream.WriteAsync(result, 0, result.Length);
            }
        }
    }

 

这个类首先我们是要有一个文件流,当然这个文件流是要可进行操作的,如果这个文件不可读不可写,那么就没有意义了。

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值