2012-05-15 31 views
10

Làm cách nào để áp dụng mặt nạ cho chuỗi nhằm định dạng văn bản đầu ra theo kiểu sau (tối đa 2 hàng đầu số không):Mặt nạ để định dạng int 1, 10, 100, thành chuỗi "001", "010", "100"

int a = 1, b = 10, c = 100; 
string aF = LeadingZeroFormat(a), bF = LeadingZeroFormat(b), cF = LeadingZeroFormat(c); 
Console.Writeline("{0}, {1}, {2}", aF, bF, cF); // "001, 010, 100" 

Giải pháp thanh lịch nhất là gì?

Xin cảm ơn trước.

+0

http://stackoverflow.com/questions/3122677/add-zero-padding-to-a-string – murgatroid99

+0

thể trùng lặp của [Pad với số không hàng đầu] (http : //stackoverflow.com/questions/3459610/pad-with-leading-zeros) –

Trả lời

31

Bạn có thể sử dụng Int32.ToString ("000") để định dạng một số nguyên theo cách này. Để biết chi tiết, xem Custom Numeric Format StringsInt32.ToString:

string one = a.ToString("000"); // 001 
string two = b.ToString("000"); // 010 
+0

Cảm ơn .. đã lưu rất nhiều thời gian của tôi – zeetit

12

Cũng như đề nghị của ông Reed, bạn có thể làm điều đó trực tiếp trong chuỗi định dạng hợp chất của bạn:

int a = 1, b = 10, c = 100; 
Console.WriteLine("{0:000}, {1:000}, {2:000}", a, b, c); // "001, 010, 100" 
2

Để hiển thị các số nguyên như một giá trị thập phân, gọi phương thức ToString (String) và chuyển chuỗi "Dn" làm giá trị của tham số định dạng, trong đó n biểu thị độ dài tối thiểu của chuỗi.

int i = 10; 
Console.WriteLine(i.ToString("D3")); 

Ngoài ra kiểm tra How to: Pad a Number with Leading Zeros

Các vấn đề liên quan