C# 程式找出檔案重複的行,計算函式執行的時間

iDotNetSpace發表於2009-01-16

請寫一個程式找出附件中檔案重複的行
輸出:
  輸出一個文字檔案,給出哪些行是重複的,第一次出現的行號,格式如下
  行號    此行的文字內容
  並給出此程式的執行時間

我大概寫了一下,程式碼如下:

static void Main(string[] args)
        {
            TimeSpan ts1 = new TimeSpan(DateTime.Now.Ticks); //get current ticks.
            StreamReader sr = new StreamReader(@"D:\文字.txt", System.Text.Encoding.Default);         //the path of source file.
            String strline="";
            int number=1;//indicate the line number.
            StringBuilder sb=new StringBuilder();

            Hashtable myHT=new Hashtable ();

            while((strline=sr.ReadLine())!=null)
            {     
                if (myHT.ContainsKey(strline))
                {
                    sb.Append(myHT[strline].ToString() + " " + strline + "\r\n");
                }
                else
                {
                    myHT.Add(strline, number);
                }
                number++;
            }

            sr.Close();
            StreamWriter wr = new StreamWriter(@"D:\1.txt");//the output file.
            wr.Write(sb+"");
            wr.Close();

            TimeSpan ts2 = new TimeSpan(DateTime.Now.Ticks); //get current ticks.
            string spanTotalSeconds = ts2.Subtract(ts1).Duration().TotalSeconds.ToString(); //seconds
            Console.WriteLine(spanTotalSeconds);
            Console.ReadKey();
        }

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-539840/,如需轉載,請註明出處,否則將追究法律責任。

相關文章