A05_IO文件流读写

来源:互联网 发布:淘宝客单页面模板 编辑:程序博客网 时间:2024/05/13 08:40
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;using System.IO;namespace A05_IOFileStreamTec{    class Demo7    {        private string _Path1 = @"Z:\Test.txt";        /// <summary>        /// 文件流的写入        /// </summary>        public void Test1()        {            //定义文件流            FileStream fs = new FileStream(_Path1,FileMode.OpenOrCreate);            //写入的内容            string strWord = "Hello world";            //字符串转byte数组            byte[] bytArray = Encoding.UTF8.GetBytes(strWord);            //写入            fs.Write(bytArray, 0, bytArray.Length);            //关闭文件流            fs.Close();        }        /// <summary>        /// 文件流的读取,用原始的try catch来防止崩溃        /// </summary>        public void Test2()        {            FileStream fs = null;            try            {                //定义文件流                fs = new FileStream(_Path1, FileMode.Open);                //开辟内存区域                byte[] byArray = new byte[1024 * 1024];                //开始读取数据                int intCount = fs.Read(byArray, 0, byArray.Length);                //byte数组转字符串                string strDisplayContent = Encoding.UTF8.GetString(byArray, 0, intCount);                //关闭文件流                fs.Close();                //显示文件内容                Console.WriteLine(strDisplayContent);            }            catch (Exception)            {            }            finally            {                if (fs != null)                {                    fs.Close();//无论正常与否,都要关闭数据流                }            }        }        /// <summary>        /// 文件流的读取,用using关键字来替代try catch。        /// 使用 using 可以自动释放资源。using()参数中填入的类型必须实现IDisposable借口        /// </summary>        public void Test3()        {            if (File.Exists(_Path1))            {                using (FileStream fs = new FileStream(_Path1, FileMode.Open))                {                    //开辟内存区域                    byte[] byArray = new byte[1024 * 1024];                    //开始读取数据                    int intCount = fs.Read(byArray, 0, byArray.Length);                    //byte数组转字符串                    string strDisplayContent = Encoding.UTF8.GetString(byArray, 0, intCount);                    //关闭文件流                    fs.Close();                    //显示文件内容                    Console.WriteLine(strDisplayContent);                }            }        }        static void Main1(string[] args)        {            Demo7 obj = new Demo7();            obj.Test3();        }    }}


原创粉丝点击