我想知道如何转换我包含的字符串,例如字符串(1/1/2015
)或(14/1/2015
)或(14/11/2015
)并转换为日期
string mydate;
DateTime dt = DateTime.ParseExact(mydate, "dd/MM/yyyy", CultureInfo.InvariantCulture);
这是正确的方法吗?
答案 0 :(得分:3)
由于您的日期和月份的单位数都不是leading zero,因此您需要使用d/M/yyyy
格式。
string mydate;
DateTime dt = DateTime.ParseExact(mydate, "d/M/yyyy", CultureInfo.InvariantCulture);
这将成功解析您拥有的所有三种字符串。
进一步阅读:
答案 1 :(得分:0)
试试这个,
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
DateFormat outputformat = new SimpleDateFormat("yyyy-MM-dd hh:mm aa");
Date date = null;
try
{
date = df.parse(listData.get(position).get("datetime"));
strDateTime = outputformat.format(date);
}
catch (Exception e)
{
e.printStackTrace();
}
如果您需要这样的输出 - >的 1/1/2015 强>
只需更改格式化方法d / m / yyyy
DateFormat outputformat = new SimpleDateFormat("d/m/yyyy");
所有日期格式,请访问此链接:
http://developer.android.com/reference/java/text/SimpleDateFormat.html
答案 2 :(得分:0)
在java中,您可以尝试以下代码: -
String str_date="14/1/2015";
DateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
Date date = formatter.parse(str_date);
以下是来自the javadoc的相关链接,列出了所有可用的格式模式:
答案 3 :(得分:0)
您可以轻松地使用SimpleDateFormat在Date和String之间进行解析。
String strDate = "2013-05-15T10:00:00-0700";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm");
Date date = dateFormat.parse(strDate);
System.out.println(date);