如果我尝试将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();
}
答案 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提供二维数组?