【轉載 reprinted】using 陳述式 筆記 -C# 指引(參考資料)(C# reference)

 【轉載自(reprinted from)】 https://docs.microsoft.com/zh-tw/dotnet/csharp/language-reference/keywords/using-statement

using statement (C# Reference)

以下「manyLines=@"This is line one……」是為了配合範例中「ReadLine」方法而設的。而其下範例「string numbers=@"One

Two Three Four."; string letters=@"A B C 

D.";」也是為此而設的



string manyLines=@"This is line one
This is line two
Here is line three
The penultimate line is line four
This is the final, fifth line.";

{
    var reader = new StringReader(manyLines);
    try {
        string? item;
        do {
            item = reader.ReadLine();
            Console.WriteLine(item);
        } while(item != null);
    } finally
    {
        reader?.Dispose();
    }
}

?運算子

string? item;

reader?.Dispose();
? 運算子大概是用來判斷其前綴物是否為null值
「string?」則應是表示這個變數的型別可以是string或null
總之,? 除用在條件運算子上外,當是與null脫不了干係
故其下可以「while(item != null);」判斷,這個變數是否是null值。否則 string 預設初始化乃空字串("")。
自己寫的範例
            using (StreamReader sr = new StreamReader(DirFiles.getCjk_basic_IDS_UCS_Basic_txt().FullName))
                d.Range().Text = sr.ReadToEnd();//sr在出此行後即會調用Dispose()清除記憶體



留言

熱門文章