[英]Number increment from string value
我的申請由於某種原因我有5位數的兩個數字。
以下代碼簡要介紹了您的想法。
string s = "00001"; // Initially stored somewhere.
//Operation start
string id = DateTime.Now.ToString("yy") + DateTime.Now.AddYears(-1).ToString("yy") + s;
//Operation end
//Increment the value of s by 1. i.e 00001 to 00002
這可以通過將s的值轉換為int並將其遞增1來輕松完成,但畢竟我還必須將增加的s值存儲為5位數,因此它將為“00002” 。
這個想法給我一個痛苦......
采用
string s = "00001";
int number = Convert.ToInt32(s);
number += 1;
string str = number.ToString("D5");
得到至少5位數。
如果需要,數字用左邊的零填充,以產生精度說明符給出的位數。 如果未指定精度說明符,則缺省值是表示不帶前導零的整數所需的最小值。
這似乎對我有用。
string s = "00001";
int i = Int32.Parse(s);
i++;
s = i.ToString("D" + s.Length);
所以我想你想知道如何將int
轉換為5位數的string
。
你可以這樣做:
int i = 1;
string s = i.ToString("D5");
//s = "00001"
這里有很多格式示例 。
這可以使用PadLeft
函數:
int i = 1; // Initially stored somewhere.
//Operation start
string id = DateTime.Now.ToString("yy") + DateTime.Now.AddYears(-1).ToString("yy") + i.ToString().PadLeft(5, '0');
//Operation end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.