首页 新闻 搜索 专区 学院

C# 代码问题

0
悬赏园豆:50 [已解决问题] 解决于 2020-09-10 15:42

我实例化了一个stringbulder

                     StringBuilder sb = new StringBuilder();

在最后取数据时,
sb.Append("{"code":"A00006","data":[");
for (int i = 0; i < livetab.Rows.Count; i++)
{

                sb.Append("{");
                sb.AppendFormat("\"picTitle\":\"{0}\",", livetab.Rows[i]["picTitle"]);
                sb.AppendFormat("\"linkAddr\":\"{0}\",", livetab.Rows[i]["linkAddr"]);
                sb.AppendFormat("\"picAddr\":\"{0}\",", livetab.Rows[i]["picAddr"]);
                sb.AppendFormat("\"sortId\":\"{0}\",", livetab.Rows[i]["sortId"]);
                sb.AppendFormat("\"headPicAddr\":\"{0}\",", livetab.Rows[i]["headPicAddr"] == null ? "" : livetab.Rows[i]["headPicAddr"].ToString());
                sb.AppendFormat("\"shareDesc\":\"{0}\",", livetab.Rows[i]["shareDesc"] == null ? "" : livetab.Rows[i]["shareDesc"].ToString());
                sb.AppendFormat("\"startTime\":\"{0}\",", livetab.Rows[i]["startTime"]);
                sb.AppendFormat("\"endTime\":\"{0}\",", livetab.Rows[i]["endTime"]);
                sb.AppendFormat("\"state\":\"{0}\"", Convert.ToDateTime(livetab.Rows[i]["endTime"]) >= Convert.ToDateTime(DateTime.Now) ? "1" : "0");//活动状态 1:正在进行  0:已经结束
                sb.Append("},");
                
            }
           
            string str = sb.ToString().Trim(',');
            sb.Append("],\"msg\":\"成功\"}");

最后两句我要把它连在一起,不用字符串拼接,再将得到的数据存到stringbulder 里面,在输出stringbuder的内容

C#
码农工具人的主页 码农工具人 | 初学一级 | 园豆:3
提问于:2020-09-10 15:20
< >
分享
最佳答案
0

sb.Remove(sb.Length-1,1);
sb.Append("],"msg":"成功"}");
不过我还是建议。写个类,可读性要高很多,并且不容易出现少 分号啥的。

收获园豆:50
flyfishing | 小虾三级 |园豆:765 | 2020-09-10 15:23

感谢大佬

码农工具人 | 园豆:3 (初学一级) | 2020-09-10 15:41
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册