字符串、DateTime类常用方法
字符串
概述
字符串是引用类型
,但是在使用时按值类型
使用。字符串是由一连串的字符组成的,使用双引号
括起来。
使用string关键字
定义字符串。对应于.Net FrameWork中的System.String类`。可以使用GetType()获取类型。
- 使用string关键字定义:
string s1 = "Hello World";
- 因为string是引用类型,所以可以使用new关键字来创建。如下代码:
char[] charA1 = { 'A', 'B', 'C', 'D', 'E' };
string s2 = new string(charA1);
- 数组返回字符串:
string[] strArray = { "A001", "A002", "A003" };
string s4 = string.Join(",", strArray);
String.format()方法的使用
使用string.format()方法可以格式化字符串输出
,如下代码:
int intA = 100;
string strA = "ABC";
string s5 = string.Format("你好{0},Hello{1}", intA, strA);
Response.Write(s5);
通过{}里面的索引号与后面的参数一一对应。索引号是从0开始的。
截取字符串
使用substring()方法可以在字符串中截取子字符串,可以从指定的位置开始截取,也可以指定截取字符串的个数。
如下代码:
//截取字符串
string strB1 = "A01234B01234C01234";
//从位置6查找子字符串
string strB2 = strB1.Substring(6);
//从位置0开始查找,一共查找3个字符。
string strB3 = strB1.Substring(0, 3);
Substring()方法的参数如果只有1个,则该参数是下标值(索引号),功能是从该下标值开始截取,截取到最后所有的字符,组成新的子字符串。
Substring()方法的参数如果有2个,则第1个参数是下标值,第2个参数是要截取子字符串的字符个数。功能是从指定的下标值开始截取,共截取指定字符个数的新子字符串。
查找字符在字符串中的位置
IndexOf()方法可以根据某个字符在字符串中查找所在的位置(下标值,或索引号)。字符在字符串中的索引号也是从0开始的,如果没有找到,则返回-1
如下代码:
//从0开始查找,找到第1个字符4所在的位置,也就是索引号。
string strB1 = "A01234B01234C01234";
//5
int index1 = strB1.IndexOf('4');
//从0开始查找,找到最后一个字符4所在的位置。
//17
int index2 = strB1.LastIndexOf('4');
IndexOf()是从字符串的左边开始查找,只查找字符第一次出现的位置(下标值)。
LastIndexOf()也是从字符串的左边开始查找,只查找字符最后一次出现的位置(下标值)。
分割字符串
使用Split()方法可以分隔字符串,将字符串中的每个字符按指定的分隔符分开,分隔后形成一个新的数组。
如下代码:
//分割字符串
string strB4 = "A#B#123#DEF#U";
string[] strArray1 = strB4.Split(new char[] { '#' });
foreach(string s in strArray1)
{
Response.Write(s);
}
去掉字符串的首尾空格
使用Trim()方法可以去除字符串前面和后面的所有空格。TrimStart()方法用于去除字符串前面的空格,TrimEnd()方法用于去除字符串后面的空格。
如下代码:
//去掉首尾空格
string strA11 = " ABC 0123 ";
string strA12 = strA11.TrimStart();
string strA13 = strA11.TrimEnd();
字符串替换
使用Replace()方法可以将字符串中的某个字符或字符串替换为新的字符或字符串
Replace()方法第1和第2个参数可以是char类型 ,也可以string类型。
Replace()方法第1个参数是要替换掉的旧字符或字符串。
Replace()方法第2个参数是新的字符或字符串。
如下代码:
string strA31 = "1234ABCD";
string strA32 = strA31.Replace(“3”, '%');
string strA33 = strA31.Replace("34", "%#");
字符串大小写转换
使用ToLower()转换为小写,使用ToUpper()转换为大写。
//大小写转换
string strA34 = "abcDEF";
//转换为小写
string strA35 = strA34.ToLower();
//转换为大写
string strA36 = strA34.ToUpper();
StringBuilder
StringBuilder是引用类型,存储在System.Text命名空间下。需要引用该名称空间。
StringBuilder可以提供高性能的字符串连接。
System.Text.StringBuilder sB = new System.Text.StringBuilder();
sB.Append("1234");
sB.Append("ABCDEF");
sB.Append("word");
Response.Write(sB.ToString());
Equals()方法
使用Equals()方法可以判断某个字符串与本字符串是否相等。如果相等,返回true,否则返回false。
string str1 = "ABC";
bool b1 = str1.Equals("ABC");
此时,b1的值就是true。
Length属性
使用Length属性可以获取字符串的长度,也就是字符有多少个字符。
string str1 = "ABC";
int length = str1.Length;
日期类型
日期类型使用DateTime表示,用于存储日期时间值。
获取日期和时间的相关值
如下代码:
//当前的日期和时间
var currentDateTime = DateTime.Now;
//获取该月中的第几天。
var currentDay = DateTime.Now.Day;
//获取月份
var currentMonth = DateTime.Now.Month;
//获取年份
var currentYear = DateTime.Now.Year;
//获取小时数
var currentHour = DateTime.Now.Hour;
//获取分钟数
var currentMinute = DateTime.Now.Minute;
//获取秒数
var currentSec = DateTime.Now.Second;
Add操作
如下代码:
//当前天数+2天
var addDays = DateTime.Now.AddDays(+2);
//减少2天。
var addDays = DateTime.Now.AddDays(-2);
//当前月数+1
var addMonths = DateTime.Now.AddMonths(1);
//当前年数+1
var addYears = DateTime.Now.AddYears(2);
转换为字符串
很实用,如下代码:
//转换为字符串
var str1 = DateTime.Now.ToString();
//获取长日期字符串
//2016年10月9日
var str2 = DateTime.Now.ToLongDateString();
//获取长时间字符串
//17:01:08
var str3 = DateTime.Now.ToLongTimeString();
//获取短日期字符串
//2016/10/10
var str4 = DateTime.Now.ToShortDateString();
//获取短时间字符串
//17:01
var str5 = DateTime.Now.ToShortTimeString();
//获取指定的格式
var str6 = DateTime.Now.ToString("yyyy-MM-dd");
var str7 = DateTime.Now.ToString("yy/MM/d");
var str8=DateTime.Now.ToString(“yyyy年MM月dd日 dddd”);
DateTime.Parse()方法的使用
DateTime d1= DateTime.Parse("2016/02/08");
可以将字符串类型的日期值转换为DateTime类型。DateTime是值类型。
`