فرمت دهی اعداد در سی شارپ

نویسنده : داود میرزایی

دوشنبه ۱۹ دی ۱۴۰۱ - ۰۹:۵۹ بازدیدها : 729

در سی شارپ می توانیم اعداد را با فرمت دلخواه در خروجی چاپ کنیم . به طور مثال عدد با دو رقم اعشار چاپ شود یا عدد سه رقم سه رقم با کاما جدا شود و ... . در این مقاله به طور کامل فرمت دهی اعداد در سی شارپ را همراه با یک اینفوگرافی زیبا آموزش داده ایم.

وقتی یک متغیر عددی داریم ممکن است بخواهیم این عدد را به صورت های مختلف چاپ کنیم. مثلا اگر عدد ما مربوط به مبلغ چیزی باشد و بخواهیم که علامت $ کنار آن قرار دهیم، یا بخواهیم اعداد اعشاری با دو رقم اعشار نمایش داده شوند و ... بنابراین لازم است زمانی که قصد داریم اعداد را چاپ می کنیم بتوانیم آن ها را فرمت دهی کنیم.

برای آن که عددی را فرمت دهی کنیم، لازم است ابتدا آن را به رشته تبدیل کنیم. این کار با سه روش ممکن است:

  • Interpolation
  • Format
  • ToString.
int a=12467;
string s=$"{a:N}";  //Interpolation

string s=string.Format("{0:N}", a);  //String.Format

string s=a.ToString("N");  //ToString()

کاراکترهای فرمت دهی:

کاراکتر نام فرمت مقدار خروجی
C or c Currency 0:C 12345.678 $12,345.68
0:C1 12345.678 $12,345.7
D or d Decimal 0:d 12345 12345
0:d6 12345 012345
E or e Scientific E 12345.6789 1.2345678E+004
F or f Fixed-point 0:F 12345.6789 12345.68
0:F0 12345.6789 12346
0:F6 12345.6789 12345.678900
G or g General 0:G 12345.6789 12345.6789
0:G7 12345.6789 12345.68
0:G2 1234 1.2E3
N or n Number 0:N 12345.678 12,345.68
0:N1 12345.678 12,345.7
0:N4 1234 1,234.0000
P or p Percent 0:P .1234 12.34%
R or r Round-tip 0:R Math.PI 3.141592653589793
X or x Hexadecimal 0:X 255 FF
0:X4 255 00FF

C یا c = برای واحد پول مورد استفاده قرار می گیرد.

D یا d = تعداد ارقام صحیح را تعیین می کند.

E یا e = کار تبدیل عدد به نماد علمی را انجام می دهد.

F یا f = برای تعداد ارقام اعشار کاربرد دارد.

G یا g = تعداد ارقام اعشار و صحیح را تعیین می کند.

N یا n = برای اعداد اعشار با جداکننده هزارتایی استفاده می شود.

P یا p = عدد را به درصد نمایش می دهد.

R یا r = برای چاپ اعداد اعشاری مورد استفاده قرار می گیرد.

X یا x = کار تبدیل عدد به مبنای هگزادسیمال را انجام می دهد.

 

فرمت دهی اعداد به صورت سفارشی:

غیر از کاراکترهای فرمت دهی می توانید به صورت سفارشی نیز فرمت دهی اعداد را انجام دهید.

کاراکتر شرح فرمت ورودی خروجی
0 Zero placeholder {0:00.00} 123.678 123.68
# Digit placeholder {0:(#).##} 123.678 (123).68
. Decimal point {0:0.000} 123.6789 123.679
, Thousand Separator {0:0,0} 12345 12,345
% Percent {0:0%} 1234 1234%

فرمت دهی به صورت سفارشی نیز مانند قبل از سه روش Interpolation، String.Format و ToString. انجام می گیرند. به عنوان مثال:

double number2=12345.67;
string s1=$"{number2:(#).##}";

string s2=string.Format("{0:(#).##}", number2);

string s3= number2.ToString("(#).##");

آموزش فرمت دهی اعداد را می توانید به طور کامل تر با مراجعه به دوره آموزش سی شارپ ۸ مشاهده نمایید. (ویدیو شماره ۴۸)

در اینفوگرافیک زیر می توانید خلاصه این مقاله را مشاهده نمایید.

  • فرمت دهی اعداد در سی شارپ