【问题标题】:How to read large text file on windows? [closed]如何在 Windows 上读取大文本文件? [关闭]
【发布时间】:2010-10-25 04:37:10
【问题描述】:

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

谁能推荐一个程序(适用于 Windows),一次只能将文件的一小部分读入内存?

或者我需要编写自己的应用程序来解析这个文件吗?

【问题讨论】:

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


【解决方案1】:

试试这个...

Large Text File Viewer

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

但是,我认为您应该改为在 serverfault.com 上问这个问题

【讨论】:

  • 服务器故障?它处于测试阶段。如何获得邀请?并感谢观众。工作一种享受。
  • FWIW,我刚刚尝试使用此应用打开一个 1.08GB 的​​ SQL 文件两次,但它在 Windows XP 上冻结了。
  • 这会使用本地存储。在浏览器中试试这个jenson.in/demos/open_giant_files_in_browser.php
  • 我认为链接坏了?
  • 但是这个工具只显示几行。我将如何搜索大文件?
【解决方案2】:

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

【讨论】:

  • 效果很好,我不需要下载或安装任何东西:)
  • 我用一个 20MB 的文本文件试了一下,结果坏了
  • 本地文件的在线编辑器?认真的吗?
  • @Win4ster 像 sublime/notepad++ 这样的本地应用程序加载这些文件的速度非常慢。我发现这个工具很方便快速扫描大文件。适用于非敏感数据。
  • @Win4ster 该页面声明该文件是通过javascript在本地加载的。我用一个 500mb 的文件尝试了它,它立即打开并显示分页移动..包括一个立即移动到文件末尾的分页。
【解决方案3】:

EmEditor,挺好用的,我用它打开了500mb以上的文件

【讨论】:

  • 这个应用对我来说效果很好,但确实要花钱。
  • @MosquitoMike 30 天免费试用
【解决方案4】:

Total Commander 的集成 Text-Viewer 可以毫无问题地打开大文件 (>10GB) 进行查看。它还提供不同的视图,例如十六进制视图。

【讨论】:

  • +1 它立即打开了我的 300Mb SQL 文件并立即搜索。由于界面有点棘手,我不得不发现如何打开文件查看器:只需选择文件并按 F3。
  • 如何打开文本查看器?
【解决方案5】:

绝对是EditPad Lite

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

而且和Notepad++也很相似;)

【讨论】:

  • 与所有其他工具(更不用说获胜者)相比,这是我最喜欢的。
【解决方案6】:

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

他们有say

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

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

【讨论】:

  • 感谢您的提示。 BareTail 对 52GB 文件没有任何问题,并且提供了非常灵敏的滚动。 Far Manager 也打开了文件,但它有一个古怪的文本终端用户界面。
  • FarManager 确实有点古怪,它的“编辑”功能需要加载整个文件......但为我解决了查看/搜索问题:) BareTail 是完美的,但它不允许编辑。
【解决方案7】:

【讨论】:

    【解决方案8】:

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

    lessmore,但更好。)

    有关less的更多详细信息,请参阅此答案:https://stackoverflow.com/a/1343576/1005039

    【讨论】:

      【解决方案9】:

      如果您可以编码,请编写控制台应用程序。这是你所追求的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();
      }
      

      【讨论】:

      • 为什么需要 ADO.NET 从文件系统中读取文件?
      【解决方案10】:

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

      否则,我会推荐一个十六进制编辑器。

      【讨论】:

      • 链接失效了。
      【解决方案11】:

      虽然大文本文件查看器非常适合查看大文件(而且是免费的!),但如果文件是定界文件或固定宽度文件,那么您应该查看File Query。它不仅可以打开任何大小的文件(我个人打开了一个 280GB 的文件,但它可以变得更大),而且它还可以让您像在数据库中一样查询文件,找出您需要的任何类型的信息可以从中得到。

      虽然它不是免费的,所以它更适合经常处理大文件的人,但如果您遇到一次性问题,您可以免费使用 30 天试用。

      【讨论】:

        【解决方案12】:

        GnuUtils for Windows 也使这变得简单。该软件包中包含标准的 UNIX 实用程序,例如 cat、ls 等。我正在使用 cat 文件名 |更多地浏览一个 Notepad++ 根本无法打开的大文件。

        【讨论】:

          【解决方案13】:

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

          可以免费评估(您可以无限期地评估)

          【讨论】:

          • 虽然这确实可以打开一个 750MB 的文件,但这不是一个好的答案,因为这个程序会尝试将整个文件加载到内存中,因此它的工作方式与尝试在记事本中打开文件一样好(即它会崩溃)。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2018-08-25
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-11
          • 2017-05-24
          • 2013-02-02
          相关资源
          最近更新 更多