c中tostring的用法
c中tostring的用法的用法你知道嗎?下面小編就跟你們詳細(xì)介紹下c中tostring的用法的用法,希望對你們有用。
c中tostring的用法的用法如下:
C
貨幣
2.5.ToString("C")
?。?.50
D
十進(jìn)制數(shù)
25.ToString("D5")
00025
E
科學(xué)型
25000.ToString("E")
2.500000E+005
F
固定點(diǎn)
25.ToString("F2")
25.00
G
常規(guī)
2.5.ToString("G")
2.5
數(shù)字
2500000.ToString("N")
2,500,000.00
X
十六進(jìn)制
255.ToString("X")
FF
formatCode 是可選的格式化代碼字符串。(詳細(xì)內(nèi)容請搜索"格式化字符串"查看)
必須用"{"和"}"將格式與其他字符分開。如果恰好在格式中也要使用大括號(hào),可以用連續(xù)的兩個(gè)大括號(hào)表示一個(gè)大括號(hào),即: "{{"或者"}}"。
常用格式舉例:
?。?) int i=12345;
this.textBox1.Text=i.ToString();
//結(jié)果 12345(this指當(dāng)前對象,或叫當(dāng)前類的實(shí)例)
this.textBox2.Text=i.ToString("d8");
//結(jié)果 00012345
?。?) int i=123;
double j=123.45;
string s1=string.Format("the value is {0,7:d}",i);
string s2=string.Format("the value is {0,7:f3}",j);
this.textBox1.Text=s1 ;
//結(jié)果 the value is 123
this.textBox2.Text=s2;
//結(jié)果 the value is 123.450
?。?)double i=12345.6789;
this.textBox1.Text=i.ToString("f2"); //結(jié)果 12345.68
this.textBox2.Text=i.ToString("f6");
//結(jié)果 12345.678900
?。?)double i=12345.6789;
this.textBox1.Text=i.ToString("n"); //結(jié)果 12,345.68
this.textBox2.Text=i.ToString("n4"); //結(jié)果 12,345.6789
?。?)double i=0.126;
string s=string.Format("the value is {0:p}",i);
this.textBox1.Text=i.ToString("p"); //結(jié)果 12.6%
this.textBox2.Text=s; //結(jié)果 the value is 12.6%
?。?) DateTime dt =new DateTime(2003,5,25);
this.textBox1.Text=dt.ToString("yy.M.d");
//結(jié)果 03.5.25
this.textBox2.Text=dt.ToString("yyyy年M月");
//結(jié)果 2003年5月
Convert.ToDateTime("2005/12/22 22:22:22").ToString("yyyy/MM/dd HH:mm:ss")
"2005/12/22 22:22:22"
(7) int i=123;
double j=123.45;
string s=string.Format("i:{0,-7},j:{1,7}",i,j);
//-7表示左對齊,占7位
this.textBox1.Text=s ;
//結(jié)果i:123 ,j: 123.45
DateTime.ToString()用法詳解
我們經(jīng)常會(huì)遇到對時(shí)間進(jìn)行轉(zhuǎn)換,達(dá)到不同的顯示效果,默認(rèn)格式為:2006-6-6 14:33:34
如果要換成成200606,06-2006,2006-6-6或更多的格式該怎么辦呢?
這里將要用到:DateTime.ToString的方法(String, IFormatProvider)
示例:
using System;
using System.Globalization;
String format="D";
DateTime date=DataTime.Now;
Response.Write(date.ToString(format, DateTimeFormatInfo.InvariantInfo));
結(jié)果輸出
Thursday, June 16, 2006
在這里列出了參數(shù)format格式詳細(xì)用法
=======================
格式字符 關(guān)聯(lián)屬性/說明
d ShortDatePattern
D LongDatePattern
f 完整日期和時(shí)間(長日期和短時(shí)間)
F FullDateTimePattern(長日期和長時(shí)間)
g 常規(guī)(短日期和短時(shí)間)
G 常規(guī)(短日期和長時(shí)間)
m、M MonthDayPattern
r、R RFC1123Pattern
s 使用當(dāng)?shù)貢r(shí)間的 SortableDateTimePattern(基于 ISO 8601)
t ShortTimePattern
T LongTimePattern
u UniversalSortableDateTimePattern 用于顯示通用時(shí)間的格式
U 使用通用時(shí)間的完整日期和時(shí)間(長日期和長時(shí)間)
y、Y YearMonthPattern
下表列出了可被合并以構(gòu)造自定義模式的模式
========================================
這些模式是區(qū)分大小寫的;例如,識(shí)別"MM",但不識(shí)別"mm"。如果自定義模式包含空白字符或用單引號(hào)括起來的字符,則輸出字符串頁也將包含這些字符。未定義為格式模式的一部分或未定義為格式字符的字符按其原義復(fù)制。
格式模式 說明 :
d 月中的某一天。一位數(shù)的日期沒有前導(dǎo)零。
dd 月中的某一天。一位數(shù)的日期有一個(gè)前導(dǎo)零。
ddd 周中某天的縮寫名稱,在 AbbreviatedDayNames 中定義。
dddd 周中某天的完整名稱,在 DayNames 中定義。
M 月份數(shù)字。一位數(shù)的月份沒有前導(dǎo)零。
MM 月份數(shù)字。一位數(shù)的月份有一個(gè)前導(dǎo)零。
MMM 月份的縮寫名稱,在 AbbreviatedMonthNames 中定義。
MMMM 月份的完整名稱,在 MonthNames 中定義。
y 不包含紀(jì)元的年份。如果不包含紀(jì)元的年份小于 10,則顯示不具有前導(dǎo)零的年份。
yy 不包含紀(jì)元的年份。如果不包含紀(jì)元的年份小于 10,則顯示具有前導(dǎo)零的年份。
yyyy 包括紀(jì)元的四位數(shù)的年份。
gg 時(shí)期或紀(jì)元。如果要設(shè)置格式的日期不具有關(guān)聯(lián)的時(shí)期或紀(jì)元字符串,則忽略該模式。
h 12 小時(shí)制的小時(shí)。一位數(shù)的小時(shí)數(shù)沒有前導(dǎo)零。
hh 12 小時(shí)制的小時(shí)。一位數(shù)的小時(shí)數(shù)有前導(dǎo)零。
H 24 小時(shí)制的小時(shí)。一位數(shù)的小時(shí)數(shù)沒有前導(dǎo)零。
HH 24 小時(shí)制的小時(shí)。一位數(shù)的小時(shí)數(shù)有前導(dǎo)零。
m 分鐘。一位數(shù)的分鐘數(shù)沒有前導(dǎo)零。
mm 分鐘。一位數(shù)的分鐘數(shù)有一個(gè)前導(dǎo)零。
s 秒。一位數(shù)的秒數(shù)沒有前導(dǎo)零。
ss 秒。一位數(shù)的秒數(shù)有一個(gè)前導(dǎo)零。
f 秒的小數(shù)精度為一位。其余數(shù)字被截?cái)唷?/p>
ff 秒的小數(shù)精度為兩位。其余數(shù)字被截?cái)唷?/p>
fff 秒的小數(shù)精度為三位。其余數(shù)字被截?cái)唷?/p>
ffff 秒的小數(shù)精度為四位。其余數(shù)字被截?cái)唷?/p>
fffff 秒的小數(shù)精度為五位。其余數(shù)字被截?cái)唷?/p>
ffffff 秒的小數(shù)精度為六位。其余數(shù)字被截?cái)唷?/p>
fffffff 秒的小數(shù)精度為七位。其余數(shù)字被截?cái)唷?/p>
t 在 AMDesignator 或 PMDesignator 中定義的 AM/PM 指示項(xiàng)的第一個(gè)字符(如果存在)。
tt 在 AMDesignator 或 PMDesignator 中定義的 AM/PM 指示項(xiàng)(如果存在)。
z 時(shí)區(qū)偏移量("+"或"-"后面僅跟小時(shí))。一位數(shù)的小時(shí)數(shù)沒有前導(dǎo)零。例如,太平洋標(biāo)準(zhǔn)時(shí)間是"-8"。
zz 時(shí)區(qū)偏移量("+"或"-"后面僅跟小時(shí))。一位數(shù)的小時(shí)數(shù)有前導(dǎo)零。例如,太平洋標(biāo)準(zhǔn)時(shí)間是"-08"。
zzz 完整時(shí)區(qū)偏移量("+"或"-"后面跟有小時(shí)和分鐘)。一位數(shù)的小時(shí)數(shù)和分鐘數(shù)有前導(dǎo)零。例如,太平洋標(biāo)準(zhǔn)時(shí)間是"-08:00"。
: 在 TimeSeparator 中定義的默認(rèn)時(shí)間分隔符。
/ 在 DateSeparator 中定義的默認(rèn)日期分隔符。
% c 其中 c 是格式模式(如果單獨(dú)使用)。如果格式模式與原義字符或其他格式模式合并,則可以省略"%"字符。
\ c 其中 c 是任意字符。照原義顯示字符。若要顯示反斜杠字符,請使用"\"。
只有上面第二個(gè)表中列出的格式模式才能用于創(chuàng)建自定義模式;在第一個(gè)表中列出的標(biāo)準(zhǔn)格式字符不能用于創(chuàng)建自定義模式。自定義模式的長度至少為兩個(gè)字符;例如,
DateTime.ToString( "d") 返回 DateTime 值;"d"是標(biāo)準(zhǔn)短日期模式。
DateTime.ToString( "%d") 返回月中的某天;"%d"是自定義模式。
DateTime.ToString( "d ") 返回后面跟有一個(gè)空白字符的月中的某天;"d"是自定義模式。
比較方便的是,上面的參數(shù)可以隨意組合,并且不會(huì)出錯(cuò),多試試,肯定會(huì)找到你要的時(shí)間格式
如要得到2005年06月 這樣格式的時(shí)間
可以這樣寫:
date.ToString("yyyy年MM月", DateTimeFormatInfo.InvariantInfo)
如此類推.
下面列出一些Asp.net中具體的日期格式化用法:
============================================
1.綁定時(shí)格式化日期方法:
2.數(shù)據(jù)控件如DataGrid/DataList等的件格式化日期方法:
e.Item.Cell[0].Text = Convert.ToDateTime(e.Item.Cell[0].Text).ToShortDateString();
3.用String類轉(zhuǎn)換日期顯示格式:
String.Format( "yyyy-MM-dd ",yourDateTime);
4.用Convert方法轉(zhuǎn)換日期顯示格式:
Convert.ToDateTime("2005-8-23").ToString
("yyMMdd",System.Globalization.DateTimeFormatInfo.InvariantInfo); //支持繁體數(shù)據(jù)庫
5.直接用ToString方法轉(zhuǎn)換日期顯示格式:
DateTime.Now.ToString("yyyyMMddhhmmss");
DateTime.Now.ToString("yyyy/MM/dd hh:mm:ss")
6.只顯示年月
DataBinder.Eval(Container.DataItem,"starttime","{0:yyyy-M}")
7.顯示時(shí)間所有部分,包括:年月日時(shí)分秒
DataFormatString='{0:yyyy-MM-dd HH24:mm:ss}'>
用DateTime.ToString(string format)輸出不同格式的日期
DateTime.ToString()函數(shù)有四個(gè)重載。一般用得多的就是不帶參數(shù)的那個(gè)了。殊不知,DateTime.ToString(string format)功能更強(qiáng)大,能輸出不同格式的日期。以下把一些情況羅列出來,供大家參考。有些在MSDN上有的就沒有列出來了。
1. y代表年份,注意是小寫的y,大寫的Y并不代表年份。
2. M表示月份。
3. d表示日期,注意D并不代表什么。
4. h或H表示小時(shí),h用的是12小時(shí)制,H用的是24小時(shí)制。
5. m表示分鐘。
6. s表示秒。注意S并不代表什么。
格式
輸出
示例
年
y
7
string yy = DateTime.Now.ToString("y-MM")
yy="7-05"
yy
07
string yy = DateTime.Now.ToString("yy-MM")
yy="07-05"
yyy或更多的y
1984
string yy = DateTime.Now.ToString("yyyy");
yy="2007"
月
M
5.
string mon = DateTime.Parse("1984-05-09")ToString("yyyy-M")
mon = "1984-5"
MM
05.
string mon = DateTime.Parse("1984-05-09")ToString("MM")
mon = "05"
MMM
如果是中文版的操作系統(tǒng),則會(huì)輸出:五月.
如果是英文操作系統(tǒng),則輸入月份前三個(gè)字母的簡寫:May
string mon = DateTime.Parse("2006-07-01").ToString("MMM")
英文版操作系統(tǒng):Jul
中文版操作系統(tǒng):七月
MMMM或更多的M
如果是中文版的操作系統(tǒng),則會(huì)輸出:五月.
如果是英文操作系統(tǒng),則輸入月份的全寫
string mon = DateTime.Parse("2006-07-01").ToString("MMM")
英文版操作系統(tǒng):July
中文版操作系統(tǒng):七月
日期或星期
d
9
string dd= DateTime.Parse("1984-05-09")ToString("d")
dd= "9"
dd
09
string dd= DateTime.Parse("1984-05-09")ToString("dd")
dd= "09"
ddd
如果是中文版的操作系統(tǒng),則會(huì)輸出星期,如星期三。.
如果是英文操作系統(tǒng),則輸出星期的簡寫:如
Wed
string dd = DateTime.Parse("2006-07-01").ToString("ddd")
英文版操作系統(tǒng):Wed
中文版操作系統(tǒng):星期三
dddd或更多的d
如果是中文版的操作系統(tǒng),則會(huì)輸出星期,如星期三。.
如果是英文操作系統(tǒng),則輸出星期:如
Wednesday
string dd = DateTime.Parse("2006-07-01").ToString("dddd")
英文版操作系統(tǒng):Wednesday
中文版操作系統(tǒng):星期三
小時(shí)
h
小時(shí)范圍:1-12
string hh = DateTime.Now.ToString("h");
hh = 8
hh或更多的h
小時(shí)范圍:1-12
string hh = DateTime.Now.ToString("hh");
hh = 08
H
小時(shí)范圍:0-23
string hh = DateTime.Now.ToString("yyyy-H");
hh = 2006-8
HH或更多的H
小時(shí)范圍:0-23
string hh = DateTime.Now.ToString("yyyy-HH");
hh = 2006-08
string hh = DateTime.Pare("2006-7-4 18:00:00").ToString("yyyy-HH");
hh = 2006-18
分鐘
m
6
string mm = DateTime.Now.ToString("yyyy-MM-dd-m");
mm = "2006-07-01-6";
mm或更多的m
06
string mm = DateTime.Now.ToString("yyyy-MM-dd-mm");
mm = "2006-07-01-06";
秒
6
string mm = DateTime.Now.ToString("yyyy-MM-dd-s");
mm = "2006-07-01-6";
ss或更多的s
06
string mm = DateTime.Now.ToString("yyyy-MM-dd-ss");
mm = "2006-07-01-06";
c中tostring的用法
上一篇:c中timer控件的用法
下一篇:c中typedef的用法