我對C 這樣的代碼感興趣:
while(getline(cin, n))
但是我想用C#做這個,我不知道如何做這樣的事情。我有10行輸入,這需要在一個字串中,但用Console.ReadLine()只能將10中的一行保存到字串。我的字串變數必須有10行文本,
例如:
"第一行的文本
第二行
第三行"。
是否有辦法像C 那樣做這樣的事情呢?
uj5u.com熱心網友回復:
如果你想模仿getline(cin, n),你可以嘗試從stdin讀取,即
using System.IO;
...
//從stdin中逐行讀取。
public static IEnumerable< string> ReadStdInLines() {
using var reader = new StreamReader(Console.OpenStandardInput() ) 。
for (string line = reader.ReadLine(); line != null; line = reader.ReadLine()
yield return line。
}
例如:
using System.Linq;
...
string[] lines = ReadStdInLines()
.Take(10) //最多 10 行。
.ToArray()。
uj5u.com熱心網友回復:
嘗試初始化一個新的變數來表示要輸入的行數。然后,在一個回圈中,輸入指定數量的新行。如果你不知道輸入資料的結束時間,那么你可以用String.IsNullOrWhiteSpace完成輸入,它檢查你輸入的最后一行是否為空,這樣就完成了輸入。 例子:
string行。
while(!String.IsNullOrWhiteSpace(line=Console.ReadLine() ) ) {}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/331777.html
標籤:
