循环遍历数据集
本文关键字:数据集 遍历 循环 | 更新日期: 2023-09-27 18:06:27
我正在遍历DataSet的行和列,以使用管道分隔符写入文本文件。我让它工作,除了我需要离开最后一列的管道。有没有办法让我调整循环到循环通过领域。计数1,然后引用循环外的最后一个字段?
foreach (object item in row.ItemArray)
{
d = d+ item.ToString() + "|";
}
您可以使用String连接任何IEnumerable(包括数组)的内容。加入,如:
var newText = String.Join("|",row.ItemArray);
您可以使用以下TrimEnd(Char[])
方法
d.TrimEnd(new char[]{'|'});
您可以使用Linq Aggregate:
d = row.ItemArray.Aggregate((x, y) => x.ToString() + "|" + y.ToString());
您可以使用:
string.Join("|", row.ItemArray);
您可以使用string.Join
方法,如下所示:
string.Join("|", row.ItemArray);
但是,如果您还在foreach
循环中执行其他逻辑,请考虑使用StringBuilder
代替。这比反复连接字符串有巨大的性能提升。然后,你可以通过调整它的长度来简单地修剪掉最后的管道。
var d = new StringBuilder();
foreach (object item in row.ItemArray)
d.Append(item.ToString()).Append("|");
d.Length -= 1;
循环后:
d = d.remove(d.Count()-1);
这将删除字符串的最后一个字符。
for(int i = 0; i < row.ItemArray.Length; i ++)
{
if(row.ItemArray[i] == row.itemArray[row.itemArray - 1])
{
d = d+ item.ToString();
}
else
{
d = d+ item.ToString() + "|";
}
}
仅在添加其他值时添加分隔符。
for(int i = 0; i < row.ItemArray.Length; i ++)
{
if( d.length == 0)
{
d = item.ToString();
}
else
{
d = d + "|" + item.ToString();
}
}