如何解决“0”值尝试获取长度值?

时间:2010-06-18 14:56:22

标签: c# .net visual-studio visual-studio-2008

如果我尝试将int值添加到数组中,字符串长度整数是“0”为什么?怎么解决呢?

  for (int j = 0; j < dTable.Columns.Count; j++)
                for (int i = 0; i < dTable.Rows.Count; i++)
                {

                    mycounter[i] = dTable.Rows[i][j].ToString().Length;
                }

它与mycounter无关,因为:

  string test = "";
           foreach(DataColumn dc in dTable.Columns)
                for (int i = 0; i < dTable.Rows.Count; i++)
                {
                   // MessageBox.Show(dTable.Rows[i][dc].ToString());
                    test = dTable.Rows[i][dc].ToString().Length.ToString();
                }

3 个答案:

答案 0 :(得分:2)

在mycounter []中,您将只拥有表格最后一列的值。 可能是最后一列包含空字符串?

答案 1 :(得分:1)

除了@Orsol所说的,你在两个维度上循环的事实似乎表明你想要每行的总长度,因此,

mycounter[i] = dTable.Rows[i][j].ToString().Length; 

应改为

mycounter[i] += dTable.Rows[i][j].ToString().Length; 

ToString()方法也可能返回空字符串。也许您正在寻找Text财产?

答案 2 :(得分:0)

除非你在for循环之间重新声明mycounter,否则你将每个列0的mycounter [i]覆盖到Columns.Count-1直到最后一列。

你想要总结一下吗?或者您是否想要为mycounter提供二维数组?