字符串
字符串占位符拼接
1 | string.Format("[{0}] {1}", 10, "abc") |
UUID
1 | Guid.NewGuid().ToString() |
时间戳
1 | TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0); |
结果类似于
1648866151124
时间戳
1 | /// <summary> |
日期格式化
1 | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff dddd"); // => 2016-05-09 13:09:55:2350 星期一 |
可用于路径
1 | string timestr = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss-ffff"); |
结果类似于
2022-04-02-10-05-02-3485
MD5
1 | /* |
字符串与字符互转
1 | private string getVerfyCode() |
字符串=>字符数组
1 | char[] cArr = mystr.ToCharArray(); |
字符数组=>字符串
1 | new string(cArr); |
字符串数组是否包含
1 | string[] strArr = { "小明", "小红" }; |
Double保留几位小数
不四舍五入
只要求保留2位不四舍五入
1 | public static double GetDouuble2f(double num) |
四舍五入
方式1
1 | Math.Round(0.55555,2) |
方式2
1 | decimal d=decimal.Round(decimal.Parse("0.55555"),2); |
方式3
1 | public static double GetDouuble2f(double num) |
方式4
1 | string result = String.Format("{0:N2}",0.55555);//2位 |
方式5
1 | double s = 55.55555; |
方式6
1 | double dValue = 95.12567; |
Binding使用StringFormat格式化字符串
货币格式
1 | <TextBlock Text="{Binding Price, StringFormat={}{0:C}}" /> // $123.46 |
货币格式,一位小数
1 | <TextBox Text="{Binding Price, StringFormat={}{0:C1}}" /> // $123.5 |
前后文字
前文字
1 | <TextBox Text="{Binding Price, StringFormat=单价:{0:C}}" /> //单价:$123.46 |
后文字
1 | <TextBox Text="{Binding Price, StringFormat={}{0}元}" /> // 123.45678元 |
数字
固定的位数,位数不能少于未格式化前,仅支持整形
1 | <TextBox Text="{Binding Count, StringFormat={}{0:D6}}" /> // 086723 |
指定小数点后的位数
1 | <TextBox Text="{Binding Total, StringFormat={}{0:F4}}" /> // 28768234.9329 |
用分号隔开的数字,并指定小数点后的位数
1 | <TextBox Text="{Binding Total, StringFormat={}{0:N3}}" /> // 28,768,234.933 |
格式化百分比
1 | <TextBox Text="{Binding Persent, StringFormat={}{0:P1}}" /> // 78.9 % |
自定义格式化
整数不保留小数点后数字,小数才保留。
格式化转换类
1 | using System; |
XAML中
原来的
1 | <TextBlock Text="{Binding rate, StringFormat={}{0:f2}%}" /> |
替换为
1 | <Window xmlns:conv="clr-namespace:SchoolClient.ValueConverters"> |
占位符
1 | <TextBox Text="{Binding Price, StringFormat={}{0:0000.00}}" /> // 0123.46 |
日期/时间
1 | <TextBox Text="{Binding DateTimeNow, StringFormat={}{0:d}}" /> // 5/4/2015 |
或者
1 | <TextBlock Text="{Binding Time,StringFormat='yyyy:MM:dd HH:mm:ss'}"/> |
多重绑定
1 | <TextBox.Text> |
结果
姓名:AAbb
多重绑定中的特殊字符
1 | <TextBox.Text> |
特殊符号
1 | \a  BEL |
结果
姓名:AA bb