菜菜吃菜 2023-03-01 17:18 采纳率: 57.5%
浏览 18
已结题

判断循环内的数值,变量赋值。

使用循环,获取newDataTable中的数据,然后生成文件。
    foreach (DataRow dataRow in newDataTable.Rows)
    {
string name=dataRow["name"].ToString().Trim()
string Value=dataRow["Value"].ToString().Trim()
}
array[2] = a1;
array[3]=a2;
string value = base.ArrayToStr(" ", "", array);
stringBuilder.Append(value);

问题:判断name中有多个张三1,张三2,Value值都为0时,赋值为value=1。在循环中怎么判断,或者循环外判断怎样更改变量。

  • 写回答

2条回答 默认 最新

  • Monster-XH 2023-03-01 17:23
    关注

    基于Monster 组和GPT的调写:
    在循环内部判断每个DataRow中的name和Value值是否满足要求,如果满足条件,则将value赋值为1。在循环结束后,您可以将生成的文件保存到指定的位置。

    foreach (DataRow dataRow in newDataTable.Rows)
    {
        string name = dataRow["name"].ToString().Trim();
        string value = dataRow["Value"].ToString().Trim();
        
        if (name.StartsWith("张三") && value == "0")
        {
            value = "1";
        }
    
        // 将value添加到stringBuilder中
        stringBuilder.Append(value);
    }
    
    // 保存生成的文件到指定位置
    File.WriteAllText("file.txt", stringBuilder.ToString());
    
    
    

    在循环内部判断了name是否以"张三"开头,并且Value是否为"0",如果满足条件,则将value赋值为"1"。在循环结束后,将生成的文件保存到指定的位置。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 於黾 2023-03-01 17:22
    关注

    你先把DataTable排序
    排好序之后你就可以判断name是不是一样的,循环一下就行了
    你可以分段进行处理,同样名字的就判断value值,名字变了那么所有变量初始化重来
    至于如何排序,你可以先生成DataTable的defaultView,然后给sort属性赋值列名,按name列排序
    排好序再将dataView.Table重新赋值给DataTable

    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月25日
  • 已采纳回答 4月17日
  • 创建了问题 3月1日

悬赏问题

  • ¥15 Qt 不小心删除了自带的类,该怎么办
  • ¥15 我需要在PC端 开两个抖店工作台客户端.(语言-java)
  • ¥15 有没有哪位厉害的人可以用C#可视化呀
  • ¥15 可以帮我看看代码哪里错了吗
  • ¥15 设计一个成绩管理系统
  • ¥15 PCL注册的选点等函数如何取消注册
  • ¥15 问一下各位,为什么我用蓝牙直接发送模拟输入的数据,接收端显示乱码呢,米思齐软件上usb串口显示正常的字符串呢?
  • ¥15 Python爬虫程序
  • ¥15 crypto 这种的应该怎么找flag?
  • ¥15 代码已写好,求帮我指出错误,有偿!