Ringkaskan ujian unit: buat strim dengan rentetan
Cara ujian unit mengendalikan strim fail teks boleh menjadi rumit. Untuk memudahkan proses ini, anda boleh menggunakan kaedah GenerateStreamFromString
:
<code class="language-csharp">public static Stream GenerateStreamFromString(string s) { var stream = new MemoryStream(); var writer = new StreamWriter(stream); writer.Write(s); writer.Flush(); stream.Position = 0; return stream; }</code>
Contoh penggunaan:
<code class="language-csharp">Stream s = GenerateStreamFromString("a,b \n c,d");</code>
Gunakan Strim dan Buang
Ingat untuk menggunakan pernyataan using
untuk memastikan strim dikeluarkan dengan betul:
<code class="language-csharp">using (var stream = GenerateStreamFromString("a,b \n c,d")) { // ... 对流进行操作 }</code>
StreamWriter dan keluarkan sumber
Perhatikan bahawa StreamWriter
tidak dikeluarkan secara eksplisit. Ini kerana ia tidak menggunakan sebarang sumber yang perlu dikeluarkan. Kaedah Dispose
terutamanya menutup strim asas yang mendasari, dalam kes ini MemoryStream
.
.NET 4.5 dan ke atas
Dalam .NET 4.5 dan lebih baru, StreamWriter
menyediakan kaedah terlebih beban yang memastikan strim asas terbuka walaupun selepas writer
diagihkan. Walau bagaimanapun, kod yang disediakan di atas mencapai kefungsian yang sama sambil juga serasi dengan versi .NET yang lebih awal.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencipta Strim daripada Rentetan untuk Ujian Unit yang Lebih Mudah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!