如何在Windows上阅读大文本文件?

时间:2009-05-11 01:47:59

标签: text-files text-editor large-files

我有一个大型服务器日志文件(~750 MB),我无法使用Notepad或Notepad ++打开它们(它们都说文件太大)。

有人可以推荐一个程序(对于Windows),它一次只会将一小部分文件读入内存吗?

或者我是否需要编写自己的应用来解析此文件?

14 个答案:

答案 0 :(得分:52)

试试这个......

Large Text File Viewer

顺便说一下,它是免费的:)

但是,我认为你应该在serverfault.com而不是

上问这个问题

答案 1 :(得分:22)

如果你需要的只是一个阅读工具,那么这件事会立即打开文件 http://www.readfileonline.com/

答案 2 :(得分:10)

使用EmEditor,它非常好,我用它来打开一个超过500mb的文件

答案 3 :(得分:8)

Total Commander的集成文字 - 查看器可以打开大文件(> 10GB),无需任何问题。它还提供不同的视图,例如十六进制视图。

答案 4 :(得分:6)

绝对 EditPad Lite

它不仅在打开文件时非常快,而且还有“全部替换”等功能,修剪前导/尾随空格或将内容转换为小写非常快。

它也非常类似于Notepad++;)

答案 5 :(得分:6)

我一直在使用BareTail一段时间来查看大型日志(一些GB),而且它运行得非常快。有免费版和商业专业版。

他们有say

  • 实时文件
  • 优化的实时查看引擎查看任意大小的文件(> 2GB)
  • 立即滚动到整个文件中的任意位置
  • 通过网络查看文件
  • 可配置换行
  • 可配置的TAB扩展
  • 可配置字体,包括间距和偏移量,以最大限度地利用屏幕空间

另一种选择是Far Manager。查看几个GB文件没有问题(内存占用很少),但尝试在编辑模式下打开文本文件可能需要几GB的RAM,因此请注意这一点。我不知道可以在Far中查看/编辑的文件大小限制。

答案 6 :(得分:4)

答案 7 :(得分:3)

我只是在Cygwin之上使用less来阅读3GB文件,但我最终使用grep来查找我需要的内容。

lessmore,但更好。)

有关lesshttps://stackoverflow.com/a/1343576/1005039

的更多详情,请参阅此答案

答案 8 :(得分:1)

如果你可以编码,写一个控制台应用程序。这是你所追求的c#等价物。 你可以用结果(拆分,执行等)做你想做的事情:

SqlCommand command = null;
try
{
    using (var connection = new SqlConnection("XXXX"))
    {
        command = new SqlCommand();
        command.Connection = connection;
        if (command.Connection.State == ConnectionState.Closed) command.Connection.Open();
        // Create an instance of StreamReader to read from a file.
        // The using statement also closes the StreamReader.
        using (StreamReader sr = new StreamReader("C:\\test.txt"))
        {
            String line;
            // Read and display lines from the file until the end of 
            // the file is reached.
            while ((line = sr.ReadLine()) != null)
            {
                Console.WriteLine(line);
                command.CommandText = line;
                command.ExecuteNonQuery();
                Console.Write(" - DONE");
            }
        }
    }
}
catch (Exception e)
{
    // Let the user know what went wrong.
    Console.WriteLine("The file could not be read:");
    Console.WriteLine(e.Message);
}
finally
{
    if (command.Connection.State == ConnectionState.Open) command.Connection.Close();
}

答案 9 :(得分:0)

我讨厌推广我自己的东西(嗯,不是真的),但PowerPad可以打开非常大的文件。

否则,我建议使用十六进制编辑器。

答案 10 :(得分:0)

虽然大文本文件查看器非常适合查看大文件(并且是免费的!),但如果文件是分隔文件或固定宽度文件,那么您应该查看File Query。它不仅可以打开任何大小的文件(我亲自打开了280GB的文件,但它可以更大),但它可以让你查询文件,就好像它也在数据库中一样,查找任何类型的信息你可能想要它。

它不是免费的,所以对于那些使用大文件的人来说更是如此,但如果你有一次性问题,你可以免费使用30天的试用版。

答案 11 :(得分:0)

GnuUtils for Windows也让这一切变得简单。在该软件包中是标准的UNIX utils,如cat,ls等。我正在使用cat filename |更多的是翻阅一个Notepad ++根本无法打开的大文件。

答案 12 :(得分:-1)

尝试Sublime Text

需要一些时间来打开文件,但之后它很快。

答案 13 :(得分:-3)

你应该试试TextPad,它可以读取那个大小的文件。

可以自由评估(您可以无限期评估)