c#如何在文件名和行字符串之间插入制表符.也如何修剪字符串后的空间

本文关键字:字符串 修剪 何修剪 空间 插入 文件名 之间 制表符 | 更新日期: 2023-09-27 18:07:33

我已经看到了很多关于使用修剪空白的答案,但我需要修剪第一个空格之后的所有内容,如" "。我将首先发布我正在讨论的代码部分,然后在它下面,我将发布整个代码。我还想知道如何在同一位置的文件和行变量之间获得"制表符"空间。这是我正在讨论的代码片段。

var files = from file in Directory.EnumerateFiles(filePath, "*.FCJ", SearchOption.AllDirectories)
            from line in File.ReadLines(file)
            where line.Contains(".FCM")
            select Path.GetFileName(file + line);
foreach (var f in files)
{
   lbMerges.Items.Add(f);
}

变量"line"显示为Text ~Space~ More Text。我想去掉第二部分"More Text"。我还想知道如何在列表视图中获得我的输出,以显示文件名和所读行之间的选项卡。这里是完整的代码,如果你需要的话。

private void rbActive_CheckedChanged(object sender, EventArgs e)
{
  if (rbActive.Checked == true)
  {
    cbFullPath.Enabled = false;
    cbFullPath.Visible = false;
    lbMerges.Items.Clear();
    lbPCL.Items.Clear();
    string filePath = textBox1.Text;
    try
    {
      var files = from file in Directory.EnumerateFiles(filePath, "*.FCJ", SearchOption.AllDirectories)
                  from line in File.ReadLines(file)
                  where line.Contains(".FCM")
                  select Path.GetFileName(file + line);
      foreach (var f in files)
      {
        lbMerges.Items.Add(f);
      }
    }
    catch (UnauthorizedAccessException UAEx)
    {
      MessageBox.Show(UAEx.Message);
    }
    catch (PathTooLongException PathEx)
    {
      MessageBox.Show(PathEx.Message);
    }
  }
  else
  {
    cbFullPath.Enabled = true;
    cbFullPath.Visible = true;
  }
}

c#如何在文件名和行字符串之间插入制表符.也如何修剪字符串后的空间

给你:

void Main()
{
  string test = "text some more text";
  string result = test.Substring(0,test.IndexOf(" "));
  // prints "text"
  Console.WriteLine(result);
}

void Main()
{
  string column2 = "Put me at column 15";
  List<string> test = new List<string>() {"text some more text", 
                                          "longtext somemore text",
                                          "t some more text" };
  List<string> result = test
      .Select(s => s.Substring(0,s.IndexOf(" ")).PadRight(15) + column2)
      .ToList();
  // output 
  // text           Put me at column 15
  // longtext       Put me at column 15
  // t              Put me at column 15 
  foreach(string s in result)
    Console.WriteLine(s);
}