C# 删除空格并添加';1';在文本文件中的特定字符之后

C# 删除空格并添加';1';在文本文件中的特定字符之后,c#,C#,我有一个文本文件,需要在字符后添加“1”,并删除前两列之间的任何空格。 我试图使用下面的查询,但出现了此错误 201N001466 AD55JGU0604140 VOLKSWAGEN GOLF S BLACK 201N001437 AF14HFY0604140 BMW 520D SE AUTO GREY 201N001298 A

我有一个文本文件,需要在字符后添加“1”,并删除前两列之间的任何空格。 我试图使用下面的查询,但出现了此错误

 201N001466  AD55JGU0604140     VOLKSWAGEN          GOLF S                   BLACK        
    201N001437  AF14HFY0604140     BMW                 520D SE AUTO             GREY  
    201N001298  AF51NSN0604140     SKODA               FABIA COMFORT 8V          
这是我希望在N之后添加'1'并删除前2个之间任何空格的格式 列

 201N1001466AD55JGU0604140     VOLKSWAGEN          GOLF S                   BLACK         
    201N1001437AF14HFY0604140     BMW                 520D SE AUTO             GREY               
    201N1001298AF51NSN0604140     SKODA               FABIA COMFORT 8V   
这是我的问题

System.IO.File.WriteAllLines(
    "outfilename.txt",
    System.IO.File.ReadAllLines("outfilename.txt").Select(line =>
        string.Join(" A",
            line.Split(new string[] { " " }, StringSplitOptions.RemoveEmptyEntries)
        )
    ).ToArray() - error illegal characters in path..
);     

尝试
String。替换

using System;
using System.Text.RegularExpressions;
foreach(line myLine in string[])
{
    String.Replace(myLine, " ", "");
    Regex.Replace(myLine, "N", "N1);
}
希望有帮助

示例代码:

string[] inputLines = File.ReadAllLines("outfilename.txt");
string[] outputLines = inputLines.Select(s => Regex.Replace(s, @"^(\s*\w*?N)(\w+)\s+(\w+)", "${1}1$2$3")).ToArray();
File.WriteAllLines("outfilename.txt", outputLines);

我建议把Linq的东西分在这里。在WriteAllines方法之外读取并处理文本文件(在数组或列表中),然后将数组写入输出文件。通过这种方式,您将能够更轻松地进行调试。这些值还包括列中的空格。所以没有办法把两个柱分开。数据格式需要更加规范。你能做些什么吗?我唯一能想到的办法是在11个字符后加入任何单词,在4个字符后插入1。