C# 3.0 如何在c中检查字符串数组的每个元素是否包含数据#
我已经创建了web应用程序并使用textbox,它可以包含多行数据,因为我已经将其textmode属性设置为multiline。 我的问题是,我想检查每一行是否包含数据,所以我使用count变量来计算有多少行包含数据C# 3.0 如何在c中检查字符串数组的每个元素是否包含数据#,c#-3.0,C# 3.0,我已经创建了web应用程序并使用textbox,它可以包含多行数据,因为我已经将其textmode属性设置为multiline。 我的问题是,我想检查每一行是否包含数据,所以我使用count变量来计算有多少行包含数据 string[] data; int cntindex; data = txt_invoicenumber.Text.ToString().Split("\n".ToCharArray()); cntindex = data.Length; for (j = 0; j <
string[] data;
int cntindex;
data = txt_invoicenumber.Text.ToString().Split("\n".ToCharArray());
cntindex = data.Length;
for (j = 0; j < cntindex; j++)
{
if (data[j]!="")
{
inv_count++;
}
}
string[]数据;
int-cnt索引;
data=txt\u invoicenumber.Text.ToString().Split(“\n.tocharray());
CNTDINDEX=数据长度;
对于(j=0;j
它不起作用。
请帮帮我。我想这是因为新行是
\r\n
,所以空行上也有一个'\r'
。将if语句更改为:
if (data[j].Trim().Length != 0)
首先,您不需要
ToString()
属性.Text
,因为它已经是一个字符串了
试试这个
string[] lines = txt_invoicenumber.Text.Split(Environment.NewLine);
int lineCount = 0;
foreach(string line in lines)
{
if(!string.IsNullOrEmpty(line))
{
lineCount ++;
this.ProcessLine(line);
}
}
这也将计算空行数。如果不想计算空行数,请使用StringSplitOptions.RemoveEmptyEntries
值
如果您对环境几乎没有控制权,请不要100%依赖“\r\n”。这就是我提出的答案
String[] lines = TextBox1.Text.Split(new Char[] { '\r', '\n' },
StringSplitOptions.RemoveEmptyEntries);
Int32 validLineCount = lines.Length;
我建议使用string.IsNullOrEmpty()。
String[] lines = TextBox1.Text.Split(new Char[] { '\r', '\n' },
StringSplitOptions.RemoveEmptyEntries);
Int32 validLineCount = lines.Length;