2016-03-20 17 views
1

C# Konsolu programımda 4 değişken var. aşağıdaki gibiC# - Dize Verilerini Sekmelerle Doğru Olarak Nasıl Girin?

int ID 
bool Status 
bool Available 
int Count 

Ben güzel girintili, Konsolu bunları yazdırmak mümkün olmak istiyorum:

Indented (Required)

Ancak sekmeleri kullandığınızda, "şöyle İsimleri ve tipleridir benim dize biçimlendirmek için, "t \, bu hesaba metin genişliğini almaz ve şöyle tüm değerler waywardly girintilenecektir:

Wayward (Actual result)

Bunu nasıl düzeltirim? Üçüncü parti kitaplıklarını kullanmak istemiyorum, ancak String.Format() gibi .NET işlevleri kullanıyorum. Böyle boşluklu

cevap

2

yapabilirsiniz ped onları:

Console.WriteLine("{0,-10}\t{1,-5}\t{2,-5}\t{3,-10}", ID, Status, Available, Count); 

Ve isterseniz yerine onları sağ hizalamak:

Console.WriteLine("{0,10}\t{1,5}\t{2,5}\t{3,10}", ID, Status, Available, Count); 

Ben bir tamsayı en uzun mümkün uzunluğuna dolgu ayarlamak veya boole dize biçiminde temsil edilir. Sütun başlıklarınızı hesaba katmak için ayarlamanız gerekebilir.

+0

bu sorunumu çözdü, teşekkür ederim deneyin! – Sach

+0

Hoşgeldiniz @Sach. –

1

bir dolgu

var data = new string[5,4] 
      { 
       { "ID", "Status", "Available", "Count" }, 
       { "------", "------", "------", "------" }, 
       { "1123", "True", "False", "-1" }, 
       { "23", "False", "True", "-23" }, 
       { "3", "True", "True", "-1" } 

      }; 
      for (int i = 0; i < data.GetLength(0); i++) 
      { 
       Console.WriteLine("{0,-10}\t{1,-10}\t{2,-10}\t{3,-10}", data[i, 0], data[i, 1], data[i, 2], data[i, 3]); 

      } 
+0

Teşekkürler, bu benim problemimi çözdü! – Sach

İlgili konular