c# foreach循环格式

本文关键字:格式 循环 foreach | 更新日期: 2023-09-27 18:17:04

我有以下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地址:约翰街555号城市:奥兰多状态:FL邮政编码:32751Unique_ID: 5326536地址:美国大街1200号城市:纽约状态:纽约邮政编码:10016Unique_ID: 4815585地址:麦迪逊大道149号城市:纽约状态:纽约邮政编码:10016之前所需输出:

<>之前Unique_ID | |邮政地址|城市|状态234556|约翰街555号|奥兰多|FL|327515326536|1200 Avenue of America|New York|NY|100164815585|149麦迪逊大道|纽约|NY|10016

c# foreach循环格式

嗯,我还没有测试过。我希望这对你有所帮助。我会在主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之后,您只需执行subtr以删除结束管道。