簡體   English   中英

c#foreach循環格式化

[英]c# foreach loop formatting

我有以下 C# 代碼提供以下輸出,但我需要一些幫助才能將其更改為以下所需的輸出。 如何重寫我的代碼以提供“必需的輸出”?

SearchResultSet results = session.Search(searchRequest);
results.GetCount());
IEnumerable columns = results.GetColumns();
while (results.HasNext())
{
    foreach (string column in columns)
    {
        Console.WriteLine(column + ": " + results.GetString(column));
    }
    Console.WriteLine();
}

輸出:

Unique_ID: 234556
Address: 555 John Street
City: Orlando
State: FL
Zip: 32751
Unique_ID: 5326536
Address: 1200 Avenue of America
City: New York
State: NY
Zip: 10016
Unique_ID: 4815585
Address: 149 Madison Avenue
City: New York
State: NY
Zip: 10016

所需輸出:

Unique_ID|Address|City|State|Zip
234556|555 John Street|Orlando|FL|32751
5326536|1200 Avenue of America|New York|NY|10016
4815585|149 Madison Avenue|New York|NY|10016

嗯,我沒有測試過。 我希望它能幫助你。 我會在 main while使用兩個foreach

SearchResultSet results = session.Search(searchRequest);
 results.GetCount()); 
 IEnumerable columns = results.GetColumns();
 bool printColumns = true;
        while (results.HasNext())
        {
            if(printColumns){
                foreach (string column in columns)
                {
                    Console.WriteLine(String.Format("{0}|", column)); //Will print Unique_ID|Address|etc...
                }               
            }
            printColumns = false;
            foreach (string column in columns)
            {
                Console.Write(String.Format("{0}|", results.GetString(column))); //Will print 234556|555 JOHN STREET|Orlando|FL|32751
            }           
            Console.WriteLine();
        }

編輯:

前面的代碼在字符串的末尾保留了一個管道。 如果你不想要這個,你應該使用一個String變量,連接結果,在每個foreach ,你只需執行一個 susbtr 來刪除結束管道。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM