永发信息网

C#如何实现数字自增,满位转成字母(9999-->a001)?

答案:4  悬赏:0  手机版
解决时间 2021-03-05 16:38
  • 提问者网友:沉默菋噵
  • 2021-03-05 02:01
例如4位字符串,0001开始到9999满了,然后变成a001。
最佳答案
  • 五星知识达人网友:话散在刀尖上
  • 2021-03-05 02:54
首先按照您的需求,个人觉得从逻辑上讲,您这里到9999了,自增1以后应该是变为a000,然后自增1才到a001。
然后您这个需求有些不明确:
1、是不是只有最左边的一位能变字母,其他后面三位最大只能到9?
2、最左边的一位最大能到多少?F还是Z?有无大小写区分(例z999 -> A000)?
3、假如最左边一位最大值是F,假如到F999,您希望接下来是什么样的?是Fa00还是停止计数?
这个逻辑上的算法不难,只要明确您的需求,我可以给您提供源码
全部回答
  • 1楼网友:山君与见山
  • 2021-03-05 06:37
我想问下19999如何表示? 再看看别人怎么说的。
  • 2楼网友:七十二街
  • 2021-03-05 05:17
纯手打。。。 string myNumber; while(我想要的条件) { string str=" "; int i=1; //对i自增操作 if(i<=9999) { i++; } lese { //str为空格 if(Convert.ToInt32(Encoding.ASCII.GetBytes(str)[0])==32) { str="a"; i=1; } //str不是空格 else { //str的下一位字母 str=Convert.ToChar(Convert.ToInt32(Encoding.ASCII.GetBytes(str)[0])+1).ToString(); i=1; } } if(符合我的条件) { string number=""; switch(i.ToString().Length) { case 1: number="000"+i.ToString(); break; case2: number="00"+i.ToString(); break; case3: number="0"+i.ToString(); break; case4: number=i.ToString(); break; } //myNumber就是最终的数据 myNumber=str+number; break; } }
  • 3楼网友:人類模型
  • 2021-03-05 03:57
既然是字符串,那就加判断,如果是9999,将其改为a001; 或者判断其长度,如果str.length()>5则将其改为a001;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯