C# - 实时读取文本文件

时间:2014-07-04 11:26:02

标签: c#

在我的程序中实时读取文本文件,但我无法让它工作。 这是我的代码,没有错误:

  public void Main2(string[] args)
    {
        string[] fileContents;

        try
        {
            fileContents = File.ReadAllLines(@"C:\temp\log.txt");

            foreach (string line in fileContents)
            {
                Console.WriteLine(line);
            }
        }
        catch (FileNotFoundException ex)
        {
            throw ex;
        }
        catch (Exception e)
        {
            throw e;
        }
    }

控制台窗口中没有打印出文字。

3 个答案:

答案 0 :(得分:2)

有两个原因你没有看到任何输出:

  1. 文件为空;
  2. 在您看到任何内容出现之前,控制台窗口已关闭。
  3. 第二个是我在代码中看到的唯一与代码相关的问题。你不要等到用户关闭控制台就好了。

    将其放在Main方法的末尾:

    Console.ReadLine();
    

    您需要按enter才能关闭屏幕。

答案 1 :(得分:1)

我想到的原因可能有两个:

  1. 您的文件是空的。
  2. 您不能调用方法Main2()
  3. 启用断点并逐步执行。

答案 2 :(得分:0)

您的代码工作正常只是看下面的代码只更新了一件事我在主函数的末尾添加Console.ReadLine();并且还将您的函数名称更改为Main2到Main。你想按回车键控制台关闭屏幕。

更新代码:

static void Main(string[] args)
    {
        string[] fileContents;

        try
        {
            fileContents = File.ReadAllLines(@"C:\temp\log.txt");

            foreach (string line in fileContents)
            {
                Console.WriteLine(line);
            }
        }
        catch (FileNotFoundException ex)
        {
            throw ex;
        }
        catch (Exception e)
        {
            throw e;
        }
        //Here is my extra one line code            
        Console.ReadLine();
    }

注意:

确认您的文本文件存在某些文字内容。