2012-05-16 54 views
0

以及我有一個打印機,我打印了價格 因爲它控制空間?在一份報告中的產品

4  $297.41$297.41$892.24 
11   $135 $135 $1350 
5  $211.2  $0$1056.03 
4  $211.2 $211.2$633.62 
3  $318.96$206.89 $750 
1  $172.41  $0$172.41 
2  $172.41$172.41$172.41 
1  $172.41  $0$172.41 
1  $172.41  $0$172.41 
1  $172.41  $0$172.41 
1  $189.65  $0$189.65 
1  $189.65  $0$189.65 

我需要的東西,因爲它:

4 $297.41 $297.41 $892.24 
11 $135 $135 $1350 
5 $211.2 $0  $1056.03 
4 $211.2 $211.2 $633.62 
3 $318.96 $206.89 $750 
1 $172.41 $0  $172.41 
2 $172.41 $172.41 $172.41 
1 $172.41 $0  $172.41 
1 $172.41 $0  $172.41 
1 $172.41 $0  $172.41 
1 $189.65 $0  $189.65 
1 $189.65 $0  $189.65 

這是我的C#代碼

file.WriteLine(cantidad+preciouni.PadLeft(13,' ')+desctot.PadLeft(7,' ')+stotal.PadLeft(7,' ')); 

但這是我的第一個例子,我該如何使用它? padleft?或padleft?謝謝版本多

回答

1

我認爲你需要做的一切是從PadLeftPadRight切換:

返回指定長度在當前字符串的末尾用空格填充的一個新的字符串或與指定的Unicode字符。

由於您希望列字段左對齊,因此您必須正確填寫。

file.WriteLine(
    cantidad.PadRight(5, ' ') + 
    preciouni.PadRight(9, ' ') + 
    desctot.PadRight(9, ' ') + 
     stotal.PadRight(9, ' ')); 
+0

哦,它工作得很好..非常感謝你 –

1

您可以通過內置的格式代碼做到這一點:

file.WriteLine(
    string.Format(
     "{0,-3} {1,-13}, {2,-7} {3,-7}", 
     cantidad,preciouni,desctot,stotal 
    ) 
); 

使用寬度格式負數左證明的字符串。

1

我會用alignment formatting

file.WriteLine(String.Format("{0,-5}{1,13}{2,7}{3,7}", 
          cantidad, preciouni, desctot, stotal)); 

逗號後的數字是空格填充的數量。

相關問題