问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c#中如何把字符串 “12:46pm 31 十月 2015” 转换为datetime类型

发布网友 发布时间:2022-04-29 01:39

我来回答

2个回答

热心网友 时间:2023-10-02 06:49

    class Program
    {
        static void Main(string[] args)
        {
            //时间字符串定义
            string text = "12:46pm 31 十月 2015";
            DateTime resDate = new DateTime();
            //判断是否是上午
            bool isMorning = text.Contains("am");
            //字符串替换 月份替换为数字 冒号替换为空格 am和pm替换为空
            text = text.Replace("一月", "01").Replace("二月", "02").Replace("三月", "03").Replace("四月", "04").Replace("五月", "05").Replace("六月", "06").Replace("七月", "07").Replace("八月", "08").Replace("九月", "09").Replace("十月", "10").Replace("十一月", "11").Replace("十二月", "12").Replace("am", string.Empty).Replace("pm", string.Empty).Replace(":", " ");

            if (DateTime.TryParseExact(text,"hh mm dd MM yyyy",null,System.Globalization.DateTimeStyles.None,out resDate))
            {
                if (isMorning)
                {
                    //12:00am指的是午夜00:00
                    resDate = resDate.Hour == 12 ? resDate.AddHours(-12) : resDate;
                }
                else if(!isMorning)
                {
                    //12:00pm外的时间要加12小时
                    resDate = resDate.Hour == 12 ? resDate : resDate.AddHours(12);
                }
                Console.WriteLine(resDate.ToString());
            }
            else
            {
                Console.WriteLine("日期转换失败");
            }
            Console.ReadKey();
        }
    }

注:时间一位比如5点显示为5而不是05时,应该用“h”而不是“hh”,这里有什么不懂的话可以查一下相关的资料。

热心网友 时间:2023-10-02 06:49

没有规律,只能拆分后再构造datetime,可以考虑正则表达式
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 致命错误: 异常代码=C0000005 @ 2013/05/07 01:51:46 PM. 错误日志文件: D:\VFP9\vfp9err.log 苏州居然也有pm2.5啦 46是多少 46 pm here 什么意思 手机出现2:46pm是什么意思?数字不断上升? 饺子有什么习俗 拍皮球和拍一拍两个词的用法有什么不同? 拍皮球和拍一拍两词的用法有什么不同? 海尔洗碗机和西门子洗碗机哪个好 西门子洗碗机和国产洗碗机比起来哪个更好 家的洗碗机和西门子洗碗机哪个好? 如何挑选一部合适的洗碗机呢?AEG、西门子、GRAM哪个更好? 家的洗碗机和西门子洗碗机哪个更适合家用呢? 家用洗碗机哪个牌子好呢,急急急? 什么品牌的洗碗机比较好呢?推荐下 sparkr对应的是hadoop的什么 《R的极客理想——工具篇》epub下载在线阅读,求百度网盘云资源_百度知 ... 如何使用Hive&R从Hadoop集群中提取数据进行分析 我根据RHadoop实践系列文章在初始化hdfs.init()命令报错?如何破呀... r语言能不能在hadoop上写分布式程序 rhadoop什么情况下不用编写map reduce函数 The largest earthquake in Japanese history 31 in northern Japan at 2:46 pm o... 46号元素钯的原子结构 It's reported that a powerful earthquake()Sendai,Japan,at 1:46pmMarch 11,2011. a.knocked b.rocked 钻戒51分两万八贵吗? bilibili账号(手机号码还记得,然后密码忘记了,现在手机号码也换了,要怎么办)在线等 51分钻戒净度是sI,颜色是IJ的钻石要多少钱 买的51分的钻戒, E色的,VS1 三个eacellent 的,荧光是 strong blue的,有GIA证书的,这个钻戒值多少 周大福钻戒51分颜色为fg,净度为vs要多少钱? 请问一颗51分的钻戒能卖多少钱? 钻戒51分,F一G级台宽比53一66,亭升比40一41,戒托铂金900,值多少钱? 周大福钻戒,51分,净度SI,颜色I-J,价格14200,值吗? 简约款式钻戒51分,H色,VS,3EX切工22000贵吗? 周大福的钻戒51分,F色,VVS1,3EX和52分,E色,VS2~~买哪个呢,51分的28000RMB,52分的大概25000RMB 我是钻戒是Pt950,钻戒颜色 I - J,净度净度VVS,钻石大小51分,大概值多少钱啊? 51分铂金钻戒,标价两万二,大概什么等级 钻戒选多大的好? 我想把微信弄成开发模式,怎么搞啊? 如何启用新版微信开发者模式 微信公众 如何进入开发模式 微信开发模式怎么用