2 me yu Me_yu 于 2014.01.16 12:30 提问

以下方法在什麽情況下會生成重複的12位字符串?或是在9999年之前都不會生成重複?
c#

public static string GetBarcode()
{
Thread.Sleep(1);//時間延遲 1/1000 秒,沒理解錯的話應該可以改變格式化時間的四位 ffff 的值
string barcode = DateTime.Now.ToString("yyyy:MM:dd:HH:mm:ss:ffff");
string[] s = barcode.Split(':');
string y;
string t ;
string f;
y = (Convert.ToInt32(s[0])+Convert .ToInt32 (s[1])+Convert .ToInt32 (s[2])).ToString ().PadLeft (5,'0');
t = (Convert.ToInt32(s[3]) + Convert.ToInt32(s[4]) + Convert.ToInt32(s[5])).ToString().PadLeft(3, '0');
f = s[6].PadLeft (4,'0');
barcode = string.Format("{0}{1}{2}",y,t,f);
return barcode;
}

1个回答

Me_yu
Me_yu   2014.01.17 08:49

年份为回文类型(或四位相同)时可能重复的概率极大。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!