C# 遍历表里变量的自增长
一个表二列为A固定,001流水号,B固定合并为一个变量“A001B”需要把001那一列自增长100次合并为变量“A001B“,“A002B““A003B““A004B“。...
一个表二列为
A 固定
,001 流水号
,B 固定
合并为一个变量“A001B”
需要把001那一列自增长100次
合并为变量“A001B“,“A002B““A003B““A004B“。。。。
流水号位置不一样时,如何动态捉取生成 展开
A 固定
,001 流水号
,B 固定
合并为一个变量“A001B”
需要把001那一列自增长100次
合并为变量“A001B“,“A002B““A003B““A004B“。。。。
流水号位置不一样时,如何动态捉取生成 展开
2个回答
展开全部
控制台下面。用SubString来处理中前的三位,因为开头和结尾都是固定的,流水号3号。
/// <summary>
/// 生成流水号并加到List中
/// </summary>
/// <param name="lst"></param>
/// <returns></returns>
static Boolean AddGuid(List<String> lst)
{
//用Linq把List中的长度等于5,开头与结尾是A和B的截出来,并转成Int。这里没有进行数字校验(会有转换危险)
var arr = from str in lst
where str.Length == 5 && str[0] == 'A' && str[4] == 'B'
select Convert.ToInt32(str.Substring(1, 3));
int num = 0;
if (arr != null && arr.Count() != 0)
{
num = arr.Max(); //求出这个数字序列中最大的
}
num++; //序列号+1
if (num <= 999)
{
lst.Add('A' + num.ToString("000") + 'B'); //加入到List中
return true;
}
return false;
}
上面是方法,你在Main中调用
List<String> idList = new List<String>(); //存放Id
//生成100个流水号
for (int i = 0; i < 100; i++)
{
AddGuid(idList);
}
//显示
for (int i = 0; i < 100; i++)
{
Console.WriteLine(idList[i]);
}
Console.ReadKey();
/// <summary>
/// 生成流水号并加到List中
/// </summary>
/// <param name="lst"></param>
/// <returns></returns>
static Boolean AddGuid(List<String> lst)
{
//用Linq把List中的长度等于5,开头与结尾是A和B的截出来,并转成Int。这里没有进行数字校验(会有转换危险)
var arr = from str in lst
where str.Length == 5 && str[0] == 'A' && str[4] == 'B'
select Convert.ToInt32(str.Substring(1, 3));
int num = 0;
if (arr != null && arr.Count() != 0)
{
num = arr.Max(); //求出这个数字序列中最大的
}
num++; //序列号+1
if (num <= 999)
{
lst.Add('A' + num.ToString("000") + 'B'); //加入到List中
return true;
}
return false;
}
上面是方法,你在Main中调用
List<String> idList = new List<String>(); //存放Id
//生成100个流水号
for (int i = 0; i < 100; i++)
{
AddGuid(idList);
}
//显示
for (int i = 0; i < 100; i++)
{
Console.WriteLine(idList[i]);
}
Console.ReadKey();
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询