c# - 如何剪切字符串的第一部分并存储它

标签 c# .net

我有一个 txt 文件,其中的行以一个随机字符开头,后跟 7 个数字,如下所示:

  • A1234567 - 随机
  • E2345678 - 随机
  • D5423434 - 随机

我想从每一行中复制前 8 个字符并存储它们,以便制作一个只包含起始字符所需部分的 txt 文件。

我发现 Substring 方法可以工作,我只是不知道如何用它们制作数组。

如果有人能帮助我,那将对我有很大帮助。

谢谢!

最佳答案

查询时,尝试使用Linq:

 using System.IO;
 using System.Linq;

 ...

 string[] result = File
   .ReadLines(@"c:\MyFile.txt")
 //.Where(line => line.Length >= 8) // uncomment if you want to remove short lines
   .Select(line => line.Length >= 8 
      ? line.Substring(0, 8) 
      : line)
   .ToArray();

如果您想确保该行以模式(大写字母后跟 7 位数字)开头,您可以尝试正则表达式 :

  using System.IO;
  using System.Linq;
  using System.Text.RegularExpressions;

  ...

  string[] result = File
    .ReadLines(@"c:\MyFile.txt")
    .Select(line => Regex.Match(line, "^[A-Z][0-9]{7}"))
    .Where(match => match.Success)
    .Select(match => match.Value)
    .ToArray();

要将日期写入文件,请使用 File.WriteAllLines:

  File.WriteAllLines(@"c:\cleared.txt", result); 

关于c# - 如何剪切字符串的第一部分并存储它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51243278/

相关文章:

c# - 如何使用 RestSharp 访问 HTTP 请求体?

c# - 如何在 while 循环中声明公共(public)字符串 (C#)

c# - 存储应用程序设置 |注册表

c# - 如何制作正确的抽象实体类

c# - 超过 16 字节的结构的最佳解决方案

c# - 我试图理解我反射(reflect)过的微软的 Do​​ubleUtil.AreClose() 代码

c# - 遍历 DataTable 以查找 List 对象中的元素?

c++ - 如何链接到 C++/Cli 混合模式 dll 中的 native 类

c# - ToUniversalTime() 和 ToLocalTime() 之间的区别

c# - 为什么我的按钮在 MouseOver 上没有改变颜色?