将DateTime.Now转换为数组

时间:2017-09-26 16:29:00

标签: c# .net

我想将DateTime.Now方法转换为字符串数组。我查看了StackOverflow并找到了以下解决方案。

DateTime dateTime = DateTime.Now;
string dateTM = dateTime.ToString("dd MMMM yyyy, HH:mm");
string[] dT = dateTM.Select(str => str.ToString()).ToArray();
File.WriteAllLines(MainPath + @"Log\Client-side.txt", dT);

问题在于我花了3个语句行来声明它所以我想知道是否有任何缩短的方法? 我知道这是一些基本的编码,但尽管我仍然无法在互联网上找到任何明确的答案。

希望你能帮助我!

2 个答案:

答案 0 :(得分:0)

您可以将其浓缩为类似的内容;

string[] segments = DateTime.Now.ToString("dd MMMM yyyy HH:mm").Split(' ');

修改

更新以添加如果您想要字符串数组中的所有字符,那么您可以引用字符串,如;

string test = "Hello world";
char character = test[2];   // contains 'l'

字符串已经是有效的字符数组,可以这样引用。

这可以修改现有代码;

string segments = DateTime.Now.ToString("ddMMMM,yyyyHH:mm");
File.WriteAllLines(MainPath + @"Log\Client-side.txt", segments.Select(c => c.ToString()).ToArray());

答案 1 :(得分:0)

如果您只想将TimeStamp写入文件,请使用File.WriteAllText

DateTime dateTime = DateTime.Now;
string dateTM = dateTime.ToString("dd MMMM yyyy, HH:mm");
File.WriteAllText(MainPath + @"Log\Client-side.txt", dateTM);

要检索,有File.ReadAllText

您也可以像这样使用File.WriteAllLines

using System.Collections.Generic;

...

List<string> lines = new List<string>();
lines.Add(dateTM);
lines.Add("Hello World!");

File.WriteAllLines(MainPath + @"Log\Client-side.txt", lines);