如何用用C#代码如何实现删除.CS文件中复制到的行号。刚刚入门,这种程序不怎么会编,求大神指导
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Text.RegularExpressions;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string path = ( @"F:\Game\");
System.IO.DirectoryInfo di = null;
FileInfo[] ff = null;
try
{
di = new System.IO.DirectoryInfo(path);
ff = di.GetFiles("*.cs");
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
string ss = Regex.Replace(path, @"^\s*\d+", "", RegexOptions.Multiline);
if (di.Exists)
{
foreach (FileInfo temp in ff)
{
FileStream fs = temp.OpenRead();
temp.IsReadOnly = false;
StreamReader sr = new StreamReader(fs, System.Text.Encoding.GetEncoding(936), true);
ss += sr.ReadToEnd();
}
}
else
{
Console.WriteLine("不存在该文件夹");
}
File.AppendAllText(@"F:\game\reader.txt", ss + "\r\n" );
Console.WriteLine("Thanks!");
Console.ReadKey();
}
}
}
用IO读取cs文件内容,正则替换下。。不懂你行号在哪,如果是在每行开始,可以用这个正则替换
\s*\d+
主要是想把复制过来的代码前面的序号删除吧?把代码复制到xls电子表格里,你多试试,轻松就可以解决问题了,在电子表格里序号在单独一列,再复制时不选它就行了。希望能帮助你。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
using System.Text.RegularExpressions;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
string path = ( @"F:\Game\");
System.IO.DirectoryInfo di = null;
FileInfo[] ff = null;
try
{
di = new System.IO.DirectoryInfo(path);
ff = di.GetFiles("*.cs");
}
catch (Exception e)
{
Console.WriteLine(e.ToString());
}
string ss = Regex.Replace(path, @"^\s*\d+", "", RegexOptions.Multiline);
if (di.Exists)
{
foreach (FileInfo temp in ff)
{
FileStream fs = temp.OpenRead();
temp.IsReadOnly = false;
StreamReader sr = new StreamReader(fs, System.Text.Encoding.GetEncoding(936), true);
ss += sr.ReadToEnd();
}
}
else
{
Console.WriteLine("不存在该文件夹");
}
File.AppendAllText(@"F:\game\reader.txt", ss + "\r\n" );
Console.WriteLine("Thanks!");
Console.ReadKey();
}
}
}
static void Main(string[] args)
{
string path = (@"F:\Game\");
Regex rx = new Regex(@"^\s*\d+", RegexOptions.Multiline);
string[] files = Directory.GetFiles(path, "*.cs");
foreach(string file in files)
{
string content = File.ReadAllText(file, Encoding.GetEncoding(936));//注意如果你的cs文件编码是utf-8,编码要改为Encoding.UTF8,要不有中文乱码
content = rx.Replace(content, "");
File.AppendAllText(@"F:\game\reader.txt", content + "\r\n", Encoding.GetEncoding(936));//注意如果你的cs文件编码是utf-8,编码要改为Encoding.UTF8,要不有中文乱码
//File.WriteAllText(file, content, Encoding.GetEncoding(936));///直接替换原来文件内容就好了,不过你最好是先备份之前的cs文件
}
Console.WriteLine("Thanks!");
Console.ReadKey();
}