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