在 C# 中拆分逗号分隔的字符串,需要将其保存在两个单独的变量中
本文关键字:存在 保存 变量 单独 两个 拆分 分隔 字符串 | 更新日期: 2023-09-27 17:55:45
我必须在 c# 中拆分逗号分隔的字符串,并需要将其保存在两个变量中。C# 函数如下所示:
public int InsertLogDetails(string RunIDStartTime, int Distribution_ID, List<string> additions, List<string> removals, bool status, string ErrorMessage)
{
int Run_ID=0;
DateTime StartTime=DateTime.Now;
//Needs to split RunIDStartTime and needs to save it in Run_ID and StartTime
}
RunIDStartTime 保存 Run_ID 和 StartTime 的值。(例如:2013年1月23日上午9:31)
有人请帮忙。提前谢谢。
这是一个有效的答案,你不需要做.ToArray,因为 Split 已经返回了一个数组。
var RunIDStartTime = "5,Jan 23 2013 9:31AM";
var listSplit = RunIDStartTime.Split(',');
var id = int.Parse(listSplit[0]);
var dateTime = DateTime.Parse(listSplit[1]);
returns id = 5 and date = Jan 23 2013 9:31AM
将 int.TryParse
和 DateTime.TryParseExact
与 DateFormat 一起使用来解析字符串。要拆分,使用 string.Split
,像这样:
string RunIDStartTime = "5,Jan 23 2013 9:31AM";
int Run_ID = 0;
DateTime StartTime = DateTime.MinValue;
string[] splittedArray = RunIDStartTime.Split(',');
if (splittedArray.Length >= 2)
{
if (int.TryParse(splittedArray[0], out Run_ID))
{
//valid ID
}
else
{
//Invalid ID
}
if(DateTime.TryParseExact(splittedArray[1],"MMM d yyyy h:mmtt",CultureInfo.InvariantCulture,DateTimeStyles.None, out StartTime))
{
//Valid date
}
else
{
//invalid date
}
}
对于输出:
Console.WriteLine("ID : {0} Date: {1}", Run_ID, StartTime.ToString());
输出:
ID : 5 Date: 23/01/2013 9:31:00 AM
public int InsertLogDetails(string RunIDStartTime, int Distribution_ID, List<string> additions, List<string> removals, bool status, string ErrorMessage)
{
var tokens = RunIDStartTime.split(',');
int Run_ID= int.Parse(tokens[0]);
DateTime StartTime = DateTime.Parse(tokens[1],"MMM d yyyy h:mmtt", CultureInfo.InvariantCulture, DateTimeStyles.None);
}