定製字串Format

來源:互聯網
上載者:User
   class Program 
{
static void Main()
{
StringBuilder sb = new StringBuilder();
IFormatProvider f=new BoldInt();
BoldInt b = new BoldInt();
sb.AppendFormat(f, "{0} {1} {2:M}", "Xiaobai", 21, DateTime.Now);
Console.WriteLine(sb.ToString());
Console.ReadKey();
}
}
sealed class BoldInt : IFormatProvider, ICustomFormatter
{
#region ICustomFormatter 成員

string ICustomFormatter.Format(string format, object arg, IFormatProvider formatProvider)
{
string s;
IFormattable formattable = arg as IFormattable;
if (formattable == null) s = arg.ToString();
else s = formattable.ToString(format, formatProvider);
if (arg.GetType() == typeof(Int32))
return "<B>"+s+"</B>";
if(arg.GetType()==typeof(DateTime))
return "<DateTime>"+s+"</DateTime>";
if (arg.GetType() == typeof(String))
return "<String>" + s + "</String>";
return s;
}

#endregion
#region IFormatProvider 成員
object IFormatProvider.GetFormat(Type formatType)
{
if (formatType == typeof(ICustomFormatter)) return this;
return Thread.CurrentThread.CurrentCulture.GetFormat(formatType);
}
#endregion
}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.