C#   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c# – 如何找到循环执行的最后一次(dr.Read())?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
看看下面的while循环.

sqlDataReader dr;

while (dr.Read())
{

Response.Write("insert into test values(N'"+dr[0]+"',N'"+dr[1]+"'),<br>");

}

我只是在最后(在那之前)用逗号打印一些东西.但是最后一次打印时,我不想要那个逗号.
如何找出这个循环最后一次执行?这样我就可以通过修改它来避免这个逗号被打印出来.

解决方法

一般来说,不可能不知道你是否在while循环的最后一次迭代.
您可以使用 @L_616_3@,而不是最后一个,但循环的第一次运行是不同的,如下所示:

sqlDataReader dr = ...;

if (dr.Read())
{
  //no comma
  Response.Write("insert into test values(N'"+dr[0]+"',N'"+dr[1]+"')");
}

while (dr.Read())
{
  //put in a comma / break for the prevIoUs item
  Response.Write(",<br>insert into test values(N'"+dr[0]+"',N'"+dr[1]+"')");
}

但是,最好只使StringBuilder在内存中构造字符串,然后立即响应所有响应.如下所示:

StringBuilder sb = new StringBuilder();    
while (dr.Read())
{
  //put in a comma / break for the prevIoUs item
  sb.Append("insert into test values(N'"+dr[0]+"',<br>");
}
sb.Remove(sb.Length-5,5); // remove the last,<br>

Response.Write(sb.ToString());

大佬总结

以上是大佬教程为你收集整理的c# – 如何找到循环执行的最后一次(dr.Read())?全部内容,希望文章能够帮你解决c# – 如何找到循环执行的最后一次(dr.Read())?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。