从文本文件读取日期/排除时间DateTime
我有一个文本文件,每行都是一个句子。最后的每个句子都有一个输入或制作日期。例如:从文本文件读取日期/排除时间DateTime
blablablablabla 2013年3月14日
当我从文本文件读取行了,我得到了一个错误说的格式的例外是未处理的。
x.DateOfSentence =
DateTime.ParseExact(lineArray[lineArray.Length-1], "M/D/YYYY", null);
其中x是Sentence
对象的名称和DateOfSentence
是在一个叫做Sentence
类的访问。
我试过定期DateTime.Parse
,但是,仍然给我错误。
当我从文本文件中读取日期时,是否有方法排除DateTime
的时间部分?
如果您知道日期是在该行的末尾,用空格从句子分开,你可以找到并删除它:
int pos = line.LastIndexOf(' ');
if (pos != -1)
{
line = line.Substring(0, pos);
}
这将需要的一切行动的空间,不接受日期。
所以你可以做的是:
var lines = new List<string>();
foreach (var line in File.ReadLines(filename))
{
// do the above
lines.Add(line);
}
// lines now is a list that contains all of the lines with the dates stripped.
问题解决了。谢谢。 – 2013-03-15 02:50:50
@KarimOumghar:很高兴为你工作。如果此答案解决了您的问题,请将其标记为接受的答案。 – 2013-03-15 10:03:23
通过显示的是在lineArray [lineArray.Length-1]做一些调试。这将是你的错误的原因,因为它可能不是日期。
'lineArray [lineArray.Length-1]'的精确值是多少?如果它看起来像'blablablablabla 3/14/2013',那么当然你有什么将不会工作。解析**确切**。不是ParseApproximate。 – 2013-03-15 01:54:25