2016-04-05 30 views
0

1042.00 gibi bir numaram varsa ve 1,042.00 olmasını istiyorum Uygun prosedür nedir. N ve N2'u biçimlendirme kodlarımda şanssız kullanıyorum. Temel olarak dolar işareti olmadan C kullanma biçimi istiyorum. Aşağıda size göstereyim.Biçimlendirme Seçeneği

fileOut.WriteLine("Standard Deviation {0,9:N2}") 

Çeşitli dizilerden tutucuları ve görüntüleme verileri kod yaklaşık 200 birden fazla satır sahiptir. Her yer tutucuya gitmek ve String.Format kullanmak zorunda kalmak istemiyorum.

+0

Kontrol bu http://stackoverflow.com/questions/2504462/is-there-an-easy-way-to-convert-a-number-to-indian-words-format-with- lakhs-ve-c – NishantMittal

+0

Bir tane daha http://www.dotnetspider.com/resources/45098-How-convert-Number-Word-using-C.aspx – NishantMittal

cevap

0

Çıktınızı biçimlendirmek için bunu yapabilirsiniz.

string.Format("{0:0,0.00}", 1042.00); //1,042.00 

Sen argümanlardan biri olarak Format arz ve bunu yapmak için StreamWriter.WriteLine yapıcısı aşırı kullanabilirsiniz.

fileOut.WriteLine("Standard Deviation {0:0,0.00}", 1042.00); 
+0

Bunu yaptı, teşekkürler! – Joe

0

Doğru yolda oldukça fazla konumlandınız. Eğer bir ondalık değere çalışıyorsanız sadece kullanmayı tercih ediyorum:

decimal someDecimal = 1042.00; 
fileOut.WriteLine("Standard Deviation {0:N2}", someDecimal); 

Sana (sorudan gerçekten belli değil - Aklınızda başka bir şey varsa lütfen güncelleyin) Metin girdileri ile çalışan demek şüpheli. Bu durumda o zaman ilk önce bir ondalık dönüştürmek isteyebilirsiniz:

string someDecimalAsString = "1042.00"; 
fileOut.WriteLine("Standard Deviation {0:N2}", Convert.ToDecimal(someDecimalAsString)); 

sen dize ondalık geçerlilik emin değiliz o zaman bunun yerine TryParse kullanmak ve geçersiz işlemek isteyebilir Eğer veriler:

string someDecimalAsString = "1042.00"; 
decimal d; 
if (decimal.TryParse(someDecimalAsString, out d)) 
{ 
    fileOut.WriteLine("Standard Deviation {0:N2}", d); 
} 
else 
{ 
    // handle invalid decimals 
}