C#中怎么将String类型(一个时间的text)转换成Data类型?

Date... Date 展开
 我来答
手机用户05838
2011-03-07 · TA获得超过200个赞
知道答主
回答量:245
采纳率:0%
帮助的人:189万
展开全部
导入 java.util.*

你让他工具自己导包```CTRL+SHIFT+O ``快捷键

simpleFormat =DateFormat.getDateInstance(DateFormat.LONG,Locale.CHINA);

这个不是NEW `是这样获得一个实例

/**
SimpleDateFormat函数语法:
G 年代标志符
y 年
M 月
d 日
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m 分
s 秒
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年中第几个星期
W 一月中第几个星期
a 上午 / 下午 标记符
k 时 在一天中 (1~24)
K 时 在上午或下午 (0~11)
z 时区
常见标准的写法"yyyy-MM-dd HH:mm:ss",注意大小写,时间是24小时制,24小时制转换成12小时制只需将HH改成hh,不需要另外的函数。
*/

DateFormat format1 = new SimpleDateFormat("yyyy-MM-dd");
DateFormat format 2= new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
Date date = null;
String str = null;

// String转Date
str = "2007-1-18";
try {
date = format1.parse(str);
data = format2.parse(str);
} catch (ParseException e) {
e.printStackTrace();
}

//Date转String
date=new Date();
str=format1.format(date);
str=format2.format(date);

1、Date——>StringString sdate;Date ddate;……sdate=(new SimpleDateFormat("yyyy-MM-dd")).format(ddate);2、String——>DateSimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");sdf.setLenient(false);String sdate="2006-06-06";Date ddate;ddate=sdf.parse(sdate);另外Integer、Double等数据包装类型与String类型的相互转换为:(以Integer为例)Integer——>StringInteger ii;String si;……si=ii.toString;String——>InttegerInteger ii;String si;……ii=Integer.valueOf(si);附:日期和时间模式(摘自JDK1.50 DOC)日期和时间格式由日期和时间模式 字符串指定。在日期和时间模式字符串中,未加引号的字母 'A' 到 'Z' 和 'a' 到 'z' 被解释为模式字母,用来表示日期或时间字符串元素。文本可以使用单引号 (') 引起来,以免进行解释。"''" 表示单引号。所有其他字符均不解释;只是在格式化时将它们简单复制到输出字符串,或者在分析时与输入字符串进行匹配。

定义了以下模式字母(所有其他字符 'A' 到 'Z' 和 'a' 到 'z' 都被保留):

字母 日期或时间元素 表示 示例
G Era 标志符 Text AD
y 年 Year 1996; 96
M 年中的月份 Month July; Jul; 07
w 年中的周数 Number 27
W 月份中的周数 Number 2
D 年中的天数 Number 189
d 月份中的天数 Number 10
F 月份中的星期 Number 2
E 星期中的天数 Text Tuesday; Tue
a Am/pm 标记 Text PM
H 一天中的小时数(0-23) Number 0
k 一天中的小时数(1-24) Number 24
K am/pm 中的小时数(0-11) Number 0
h am/pm 中的小时数(1-12) Number 12
m 小时中的分钟数 Number 30
s 分钟中的秒数 Number 55
S 毫秒数 Number 978
z 时区 General time zone Pacific
hanwt139
2011-03-07 · TA获得超过843个赞
知道小有建树答主
回答量:1144
采纳率:100%
帮助的人:690万
展开全部
建议你用 DateTime.TryParse()
怎么用,你看文档吧。
这个函数的好处是不用考虑转换失败的时候报错。
而且可以直接把结果赋值给用来保存的变量
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
qiushiji
推荐于2018-04-11 · TA获得超过502个赞
知道小有建树答主
回答量:560
采纳率:100%
帮助的人:517万
展开全部
string类型可以通过Convert和parse方法转换成DateTime类型。
比如
string dateString ="2011-03-06";
DateTime date = Convert.ToDateTime(dateString);
或 DateTime date = DateTime.parse(dateString);

以上两种方法在字符串格式错误的时候都会抛出异常。
所以我们还可以使用tryparse方法进行转换
string dateString="2011-03-06";
DateTime date;

if(DateTime.TryParse(dateString,out date))
MessageBox.Show("转换正确");
else
MessageBox.Show("转换失败");
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
剑舞心伤
2011-03-06 · TA获得超过238个赞
知道小有建树答主
回答量:205
采纳率:0%
帮助的人:148万
展开全部
DateTime d;
if(DateTime.TryPares("字符串",out d))
{
debug.print("成功”);
}else{
debug.print("未成功”);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
339090851
2011-03-06
知道答主
回答量:31
采纳率:0%
帮助的人:21万
展开全部
DateTime.past(string)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式