首頁 >後端開發 >C++ >如何在 C# 中從字串建立流?

如何在 C# 中從字串建立流?

Susan Sarandon
Susan Sarandon原創
2025-01-22 14:51:11729瀏覽

How Can I Create a Stream from a String in C#?

在 C# 中從字串建立流

本指南示範如何在 C# 中從字串有效地建立流物件。 當單元測試需要流作為輸入的函數時,這種技術特別有價值,模仿從文字檔案中讀取的行為。

解:

以下 C# 程式碼片段提供了將字串轉換為流的函數:

<code class="language-csharp">public static Stream StringToStream(string inputString)
{
    MemoryStream stream = new MemoryStream();
    StreamWriter writer = new StreamWriter(stream);
    writer.Write(inputString);
    writer.Flush();
    stream.Position = 0;
    return stream;
}</code>

使用方法:

這個StringToStream函數可以像這樣整合到您的程式碼中:

<code class="language-csharp">using (Stream myStream = StringToStream("a,b \n c,d"))
{
    // Process the stream here...
}</code>

關於 StreamWriter 處置的重要說明:

StreamWriter 未在函數內明確配置。 這是故意的。 StreamWriter 充當包裝器;處理它會過早關閉底層的 MemoryStream,我們需要返回它。

.NET 4.5 及更高版本:

雖然 .NET 4.5 及更高版本提供 StreamWriter 重載,使底層流在處理後保持開啟狀態,但提供的程式碼仍與所有 .NET 框架相容。 這確保了更廣泛的適用性。

以上是如何在 C# 中從字串建立流?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn