sayı

2011-02-21 24 views
5

değerini değiştirmeden bir yüzdesi olarak kayan noktalı sayı gösteriliyor o sayının değerini değiştirmeden yüzde simgesini eklemek için string.Format() parametrelerini belirlemek mümkün mü?sayı

Örnek:
Biz numarasını 44.36 var ve biz olarak Excel'e ızgara ve çıktıda göstermek istiyorum. Değeri 100'a bölerek ve ardından "P" formatını uygulamak bir seçenek değildir. Değerlerin değiştirilmesi bu durumda yapılamaz, sadece DisplayFormat değerini değiştirerek yapmamız gerekir. string.Format("{0}%", valueParam)'u kullanmak da bir seçenek değildir.

cevap

11

Özel bir biçim belirtin. '%' işaretinin yüzde işareti ile '\\' bir tam ters eğik çizgi kaçmak gerekir, bu yüzden yüzde bir değer yeniden yorumlamıyor.

var number = 44.36m; 
var formatted = number.ToString("0.##\\%"); // "44.36%" 
// format string @"0.##\%" works too 

// using String.Format() 
var sformatted = String.Format("{0:0.##\\%}", number); // "44.36%"