C# list<string> 怎么提取需要的内容并做一些计算?
发布网友
发布时间:2024-10-06 21:59
我来回答
共2个回答
热心网友
时间:2024-11-24 17:22
每一行数据用 Spite 方法分割一下,可以直接按"Z"来分,把 string 类型用 Convert.ToDouble(string) 方法转一下类型变成 Double,定义一个变量储存第一个元素的值,之后 for 循环依次做差就完了。
参考代码:
List<string> lst; // 这是原来的 List
List<string> lstNew = new List<string>(); // 重新计算后的 List
double baseNumber = Convert.ToDouble(lstOld[0].Split('Z')[1]);
for (int i = 0; i < lstOld.Count; i++)
{
double currentNumber = Convert.ToDouble(lstOld[i].Split('Z')[1]);
lstNew.Add(lstOld[i].Split('Z')[0] + "Z" + (currentNumber - baseNumber).ToString("N5"));
}
热心网友
时间:2024-11-24 17:22
List<string> s = new List<string>();
s.AddRange(tem);
int addInt=2;//递增值
for (int i = 0; i < s.Count; i++)
{
string[] arr = s[i].Split('Z');
s[i] = arr[0] + "Z" + (0 + i * addInt+".").PadRight(7,'0');
}
当然也可以把最后一部分计算好的值用ToString("f5")显示追问Z后面可能有其他内容,这么做会把之后的删掉吧?
追答那就用string的indexof截取字符Z的位置,再设置,