为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 C# 中设置的字符数将字符串解析为数组

如何使用 C# 中设置的字符数将字符串解析为数组

C#
jeck猫 2022-06-12 15:09:53
我有一些像这样的c#代码:string myString = "20180426";我知道如何解析特定字符(使用 string.Split 东西),但我如何让它返回 3 个这样的字符串:20180426我有几个以这种方式格式化的字符串(“YYYYMMDD”),所以我不想要只适用于这个特定字符串的代码。我尝试使用var finNum = myString[0] + myString[1] + myString[2] + myString[3];Console.Write(finNum);但我想它将字符视为整数,而不是文本字符串,因为它正在对它们进行一些数学运算而不是连接(它也不是加法,因为它返回 203,这不是 2、0、1 和 8 的总和)。我尝试更改var为string,但它不会让我隐式地将 int 转换为字符串。为什么它认为那string myString是 a int,而不是string我声明的 a ?我也可以使用DateTime.Parseand DateTime.ParseExact,但显然“20180426”不被识别为有效的 DateTime:DateTime myDate = DateTime.ParseExact(myString, "YYYYMMDD", null);Console.WriteLine(myDate);谢谢您的帮助。我知道答案可能很简单,而且我觉得问起来很愚蠢,但我认真检查了各个网站,在这里找不到适合我的问题的解决方案。
查看完整描述

2 回答

?
慕森卡

TA贡献1806条经验 获得超8个赞

我也可以使用DateTime.Parseand DateTime.ParseExact,但显然 "20180426" 不被识别为有效的DateTime.


是的,因为格式字符串YYYYMMDD不正确,所以年份和日期都是小写的:


DateTime myDate = DateTime.ParseExact(myString, "yyyyMMdd", null);

如果你想要年、月和日:


int year = myDate.Year;

int month = myDate.Month;

int day = myDate.Day;


查看完整回答
反对 回复 2022-06-12
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

如果您想用变量分隔年、月和日,您可以尝试:


       string mystring = "20180426";

       mystring = mystring.Insert(4,"-");

       mystring = mystring.Insert(7,"-");


       string year = mystring.Split('-')[0];

       string month = mystring.Split('-')[1];

       string day = mystring.Split('-')[2];

首先我添加一个字符“-”来分隔年和月,然后再添加一个字符来分隔月和日。你会得到类似“2018-04-26”的东西


然后我拆分字符串并将存储字符串前 4 个数字的位置 0 保存到名为 year 的变量中。


查看完整回答
反对 回复 2022-06-12
  • 2 回答
  • 0 关注
  • 122 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信