1. 程式人生 > >C# FileStream異常處理以及委託

C# FileStream異常處理以及委託

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;

namespace Stream類加深
{
    public delegate void A(FileStream fileStream);
    class Program
    {
        static void Main(string[] args)
        {
           String [email protected]
"C:\Users\***\Desktop\abc.txt"; A a = B; DoSomething(path, a);//用這個函式可以省略大量程式碼 /*用匿名委託也可以做 DoSomething(path,delegate(FileStream fileStream) { byte []datas={100,101,102,103,104,105,106,107,108}; fileStream.Write(datas, 0, datas.Length); }); */ } public static void DoSomething(string path,A a)//不要忘記static { FileStream fileStream = new FileStream(path, FileMode.OpenOrCreate,FileAccess.ReadWrite, FileShare.ReadWrite); try { a(fileStream); } catch(Exception e) { Console.WriteLine(e.Message); } finally { if (fileStream != null) fileStream.Close(); } } public static void B(FileStream fileStream)//不要忘記static { byte []datas={100,101,102,103,104,105,106,107,108}; fileStream.Write(datas, 0, datas.Length); } } }