我在
下面有这个参数token [10] =“日期:UTC 2012-02-02 17:09:04”
我编写了以下代码,仅提取年份和月份,因此它假设为“201202”。 无论如何我只能使用split获得那些值,我知道我们也可以使用正则表达式但是这是提取这些值的任何其他方法
string Encdate = tokens[10];
string[] EncdateValue = Encdate.ToString().Split(' ');
string Encdatesplit = EncdateValue[2].TrimStart();
string[] YYMM = Encdatesplit.ToString().Split('-');
string YYMMVal = YYMM[0] + YYMM[1];
答案 0 :(得分:4)
只需使用DateTime.ParseExact
方法并访问返回的Year
对象中的Month
和DateTime
属性,否则请使用Date/Time string formatters和DateTime.ToString(string)获取yyyyMM格式的方法,这是一个例子:
var d = DateTime.ParseExact(token, "'Date: UTC' yyyy-MM-dd HH:mm:ss",
CultureInfo.InvariantCulture,
DateTimeStyles.AllowWhiteSpaces | DateTimeStyles.AssumeUniversal);
Console.WriteLine(d.ToString("yyyyMM"));
答案 1 :(得分:0)
var t = token [10];
您还可以使用所需字符的串联:
string Encdate = t[10] + t[11] + t[12] + t[13] + t[15] + t[16];
或者使用substring(用于添加两个):
string Encdate = t.Substring(10, 4) + t.Substring(15, 2);
或子字符串和删除:
string Encdate = t.Substring(10, 7).Remove(4);