如何删除C#中一行文本的一部分

本文关键字:一行 一部分 文本 何删除 删除 | 更新日期: 2023-09-27 18:22:39

我需要一些帮助从文件中删除一行文本的一部分。示例:

假设我有一个目录列表的输出,如下所示:

 Directory of C:'Data'Junk
03/12/2014  08:35 AM    <DIR>          .
03/12/2014  08:35 AM    <DIR>          ..
03/05/2014  05:36 PM               397 junk.xml
03/05/2014  05:36 PM               397 more_junk.xml

我的目标是将其转化为以下内容:

 Directory of C:'Data'Junk
.
..
junk.xml
more_junk.xml

如果我有一个预期的字符串要删除,我知道如何使用编辑器来完成这项工作,但我不知道如何动态地完成这项任务。或者,有没有一种方法可以检测到,如果行的第一部分是日期,然后删除X个字符(在这种情况下,X会把我带到文件名的开头)?

提前感谢您的帮助!

如何删除C#中一行文本的一部分

为什么不使用Directory.GetFiles列出所有文件?

string[] files = Directory.GetFiles(@"C:'Data'Junk", "*.*", SearchOption.TopDirectoryOnly);

然后按照您的意愿进行格式化,例如

Console.WriteLine(".");
Console.WriteLine("..");
foreach(string f in files)
{
  Console.WriteLine(file);
}

如果您知道要丢弃的字符串的长度(上面显示为40个字符),您可以执行

yourString.Substring(40)

以获得行的剩余部分。

然而,注释的建议是合理的——您可能不需要首先处理字符串的这种特殊情况。