避免截断字符串的前导加号
本文关键字:字符串 | 更新日期: 2023-09-27 18:03:00
DataTable dt = {a DataTable containing one column of strings in this format: "+12394837444"}
所有成员都有前导加号,这个数据表由这些成员组成,只有一列。我想从这个表中获取一个完整形式的字符串:
for (int j = 0; j < dt.Rows.Count; j++)
{
System.Data.DataRow drow = dt.Rows[j];
string total = drow.ItemArray.GetValue(0).ToString();
}
if(total.StartsWith("+"))
{
// we are ok
}
else
{
string edited = "+" + total;
}
,但这会截断前导加号,并且由于这些不是双精度或数字类型,因此ToString()没有重载来定义不删除的加号。有加号是必要的,但ItemArray.Getvalue(). tostring()总是删除它。如何防止这种情况的发生,并获得前导符号呢?
要么将其存储为带有前导+的字符串,要么像这样添加:
string total = "+" + drow.ItemArray.GetValue(0);
编辑
不确定类型是什么,但是可以检查+号是否已经在那里了:
string total = drow.ItemArray.GetValue(0).ToString();
if (total.IndexOf('+') != 0) {
total = "+" + total;
}