有这样一个字符串,00A,希望通过程序使其自动递增,其规律如下:00A、00B、00C、......00Z、01A、......99Z,怎么样通过C#程序实现啊,各位帮个忙,给看看!谢谢啊!!!
解决方案 »
- 在线等!!!!!!!着急!!!!!!!!!!
- C# 如何截取一段内容,不要样式表,标点符号也要获取的
- System.web.mail.smtpmail
- winform 引出execl,用什么using的?
- 邮件的标题和内容部份中文都是用的 bit8 进行编码 如果对中文字符进行解码,在线?(100)
- [不算灌水的灌水]...这年头软件被人做完了。。郁闷 大家在做什么?
- 我都这样删除控件了,this.Controls.Remove(this.txtSearch);但为什么this.txtSearch.Text还是能读取它的值 呢?
- 请帮帮我这个菜鸟看看数据库的问题
- 请问怎样让我在控件里画的图形随控件大小改变而改变。
- 判断数组相等的方法
- GRIDVIEW 控件问题
- From中的保存设置怎么弄啊
{
private int _numPart = 0;
private int _charPart = 0;
private const char _charStart = 'A'; public NumChar(int num, char c)
{
_numPart = num;
_charPart = c-_charStart;
} public void AddOne()
{
_charPart = (_charPart + 1) % 26;
_numPart += (_charPart == 0) ? 1 : 0;
} public override string ToString()
{
return _numPart.ToString("00") + (char)(_charStart + _charPart);
}
}
这样啊,000~009,00A,00B~00Z
然后
010~009,01A,01B~01Z
ZZ0~ZZ9,ZZA,ZZB~ZZZ这样才对啊,
如果是这样的话,你直接定义一个public class CustomNumber
{
private int value = 0;
public void SetValue( int value )
{
this.value = value;
}
public void SetValue( CustomNumber a )
{
this.value = a.value;
}
public static CustomNumber operator ++( CustomNumber a )
{
a.value++;
return a;
}
public static CustomNumber operator --( CustomNumber a )
{
a.value--;
return a;
}
public override string ToString()
{
StringBuilder sb = new StringBuilder();
for( int a = value; a > 0; )
{
int b = a % 36;
if( b > 9 )
sb.Insert( 0, ( char )( 55 + b ) );
else
sb.Insert( 0, b.ToString() );
a /= 36;
} return sb.ToString();
}
}用例:
CustomNumber b = new CustomNumber();
Console.WriteLine( "0=" + b ); // 等于 0b.SetValue( 10 );
Console.WriteLine( "10=" + b ); // 等于 Ab++;
Console.WriteLine( "11=" + b ); // 等于 Bb.SetValue( 1000 );
Console.WriteLine( "1000=" + b );// 等于 RS