iT邦幫忙

0

c# 格式化1 轉成0001

c#
  • 分享至 

  • xImage

最近要寫流水帳取號
每個月能開10000張工單,工單流水號從1開始
格式用 20180314xxxx,而xxxx就是從工單號來,也就是我要取的流水號,
請問怎麼把工單流水號變成我要的格式

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
3
暐翰
iT邦大師 1 級 ‧ 2018-03-14 10:10:55
最佳解答

解決方式:

可以使用string.Format("{替代字串:幾位數}",你的流水號)

範例:

void Main()
{
	for (int i = 0; i < 10000; i++)
	{
		var str_no = string.Format("{0:0000}", i);
		Console.WriteLine($@"流水號: 20180314{str_no}");
	}
}

C# SMI iT邦新手 5 級 ‧ 2018-03-14 12:47:16 檢舉

謝謝大大!

0
小魚
iT邦大師 1 級 ‧ 2018-03-14 12:01:52

看你的問題內容,
感覺你是要將文字轉成數字,
好像跟你的題目不大一樣,
如果是要將文字轉成數字的話,

可以先取得後面四個文字

string name = "201803140001";
int length = name.Length;
string text = name.Substring(length - 4, 4);

然後再轉成數字

int number = Convert.ToInt32(text);

前提是你要保證抓出來的資料一定會是這個格式,
如果不一定的話就要做一些例外處理了.

C# SMI iT邦新手 5 級 ‧ 2018-03-14 12:47:04 檢舉

抱歉我描述有問題,造成大大你誤會
這裡再次謝謝大大!

0
laota
iT邦見習生 ‧ 2018-03-15 10:25:54

借用一下 暐翰的code 我都這樣寫

for (int i = 0; i < 10000; i++)
{
    var str_no = "20180314" + i.ToString("D4");
    Console.WriteLine($@"流水號: {str_no}");
}
C# SMI iT邦新手 5 級 ‧ 2018-03-15 10:41:05 檢舉

謝謝大大!

我要發表回答

立即登入回答