C#读取文件:按行读取

来源:互联网 发布:puppy linux 编辑:程序博客网 时间:2024/05/24 06:49
C#如何读取文件前面说过了:http://blog.csdn.net/yysyangyangyangshan/article/details/6948327,下面以一个例子来说明如何按行读取,其实很简单,就是使用FileStream的ReadLine()方法。
例如有这样一个文件test.txt,读取出来显示在一个richtextbox中,文件内容如下:
[html] view plaincopyprint?
  1. 诺基亚    =N8  
  2. 摩托罗拉  =ME525+  
  3. 华为   =HONOR  
  4. HTC=A3366/T9299  
读取方法为:
[csharp] view plaincopyprint?
  1. public static Dictionary<stringstring> ReadLineFile()  
  2.        {  
  3.            string filePath = Common.StartupPath + @"test.txt";  
  4.   
  5.            Dictionary<stringstring> contentDictionary = new Dictionary<stringstring>();  
  6.   
  7.            if (!File.Exists(filePath))  
  8.            {  
  9.                return contentDictionary;  
  10.            }  
  11.   
  12.            FileStream fileStream = null;  
  13.   
  14.            StreamReader streamReader = null;  
  15.   
  16.            try  
  17.            {  
  18.                fileStream = new FileStream(filePath, FileMode.Open, FileAccess.Read);  
  19.   
  20.                streamReader = new StreamReader(fileStream, Encoding.Default);  
  21.   
  22.                fileStream.Seek(0, SeekOrigin.Begin);  
  23.   
  24.                string content = streamReader.ReadLine();  
  25.   
  26.                while (content != null)  
  27.                {  
  28.                    if (content.Contains("="))  
  29.                    {  
  30.                        string key = content.Substring(0, content.LastIndexOf("=")).Trim();  
  31.   
  32.                        string value = content.Substring(content.LastIndexOf("=") + 1).Trim();  
  33.   
  34.                        if (!contentDictionary.ContainsKey(key))  
  35.                        {  
  36.                            contentDictionary.Add(key, value);  
  37.                        }  
  38.                    }  
  39.                    content = streamReader.ReadLine();  
  40.                }  
  41.            }  
  42.            catch  
  43.            {  
  44.            }  
  45.            finally  
  46.            {  
  47.                if (fileStream != null)  
  48.                {  
  49.                    fileStream.Close();  
  50.                }  
  51.                if (streamReader != null)  
  52.                {  
  53.                    streamReader.Close();  
  54.                }  
  55.            }  
  56.            return contentDictionary;  
  57.        }  

显示richtextbox如图:


详细工程:http://download.csdn.net/detail/yysyangyangyangshan/4073781

原创粉丝点击