• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

C#除去以//开始的注释

OC/C/C++ 水墨上仙 2104次浏览

C#除去以//开始的注释


using System.IO; 
using System.Collections; 
    static string deleteComments(string s) //去掉以//开始的注释 
    { 
        if (s == null) return s; 
        int pos = s.IndexOf("//"); 
        if (pos < 0) return s; 
        return s.Substring(0, pos); 
    }
        if (Directory.Exists("Temp")) 
            Directory.Delete("Temp"); 
        if (File.Exists("Generator.cmd")) 
            File.Delete("Generator.cmd"); 
        if (File.Exists("rem.txt")) 
            File.Delete("rem.txt"); 
        Directory.CreateDirectory("Temp"); 
        DirectoryInfo dir = new DirectoryInfo("."); 
        ArrayList folders = new ArrayList(); 
        FileSystemInfo[] fileArr = dir.GetFileSystemInfos(); 
        folders.AddRange(fileArr); 
        for (int i = 0; i < folders.Count; i++) 
        { 
            FileInfo f = folders[i] as FileInfo; 
            if (f == null) 
            { 
                DirectoryInfo d = folders[i] as DirectoryInfo; 
                if (!d.Name.Contains("Debug") && !d.Name.Contains("Release") && d.Name!="Temp") 
                { 
                    Directory.CreateDirectory("Temp" + "\\" + d.Name); 
                    folders.AddRange(d.GetFileSystemInfos()); 
                } 
            } 
            else 
            { 
                string str = f.FullName; 
                if (Path.GetExtension(f.FullName) == ".c" || Path.GetExtension(f.FullName) == ".cpp" || Path.GetExtension(f.FullName) == ".h" || Path.GetExtension(f.FullName) == ".hpp" || Path.GetExtension(f.FullName) == ".cxx" || Path.GetExtension(f.FullName) == ".cs") 
                { 
                    try 
                    { 
                        FileStream fin = new FileStream( 
                            f.FullName, FileMode.Open, FileAccess.Read); 
                        FileStream fout = new FileStream( 
                            str.Replace(Directory.GetCurrentDirectory(), Directory.GetCurrentDirectory() + "\\Temp"), FileMode.Create, FileAccess.Write); 
                        StreamReader brin = new StreamReader( 
                            fin, System.Text.Encoding.Default); 
                        StreamWriter brout = new StreamWriter( 
                            fout, System.Text.Encoding.Default); 
                        string s = brin.ReadLine(); 
                        while (s != null) 
                        { 
                            s = deleteComments(s);						//去掉以//开始的注释 
                            brout.WriteLine(s);			//写出 
                            Console.WriteLine(s);		//在控制上显示 
                            s = brin.ReadLine();						//读入 
                        } 
                        brin.Close();				// 关闭缓冲读入流及文件读入流的连接. 
                        brout.Close(); 
                    } 
                    catch (FileNotFoundException) 
                    { 
                        Console.WriteLine("File not found!"); 
                    } 
                    catch (IOException e2) 
                    { 
                        Console.WriteLine(e2); 
                    } 
                } 
                else
                    File.Copy(f.FullName, str.Replace(Directory.GetCurrentDirectory(), Directory.GetCurrentDirectory() + "\\Temp"));
            } 
        }


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明C#除去以//开始的注释
喜欢 (0)
加载中……