题 文本编辑器打开大(巨大,巨大,大)文本文件[关闭]


我的意思是100多MB大;这样的文本文件可以推动编辑的信封。

我需要查看一个大型XML文件,但如果编辑器有错误则无法查看。

有什么建议么?


1023


起源


实际上,100 + MB甚至1+ GB的文本文件并不像您想象的那样罕见(即来自繁忙服务器的日志文件)。 - Anders Sandvig
偷偷摸摸:并不完全是文本。我认为阅读文本文件和阅读二进制文件的要求有所不同。但是,您可以通过base64或uuencode传递它。 - Joey
这至少应该是一个类似的问题,甚至是18个月之前提出的问题...... stackoverflow.com/questions/102829/... - ONDEV
我也在寻找这个问题的答案,以便阅读我生成的一些巨大的日志文件! - HorseloverFat
@BlairHippo我也有同样的感觉,在问一个问题时我几乎感到紧张,因为有人会说“关闭它,它应该进入WhateverExchange” - Rodolfo


答案:


010Editor 在Windows上将以二进制模式打开GIANT(认为50 GB)文件,并允许您编辑和搜索文本。

社区维基:

建议是

  • HTMLPen.com 是一个 自由 在线编辑器,可以打开和 突出语法 TB +文件即时,支持UTF-8,可以在现代浏览器上运行 在任何OS中。 (只读大文件)
  • Liquid Studio大文件编辑器 立即打开和编辑TB +文件,支持UTF-8,Unicode等 自由 并由社区版(仅限Windows)覆盖。
  • SlickEdit的
  • 大文本文件查看器 (只读)
  • glogg (只读,直接从磁盘读取文件,处理多GB文件)。
  • HXD 十六进制编辑器,但适合大文件。
  • LogExpert (下载)为超过6 GB的日志文件做了一个膨胀的工作。它是 自由
  • 用UltraEdit 可以打开超过6 GB的文件,但必须更改配置才能实现(菜单 高级 → 组态 → 文件处理 → 临时文件 → “打开没有临时文件的文件......”)。
  • wxHexEditor 可以在Linux,Windows,MacOSX上立即打开这些文件
  • EmEditor中 很好地处理非常大的文本文件,正式高达248 GB,但根据我的经验高达900 GB。

或者,如果您只想查看文件的开头,Windows内置 more 命令可能已经足够好了。


1118



VIM,或Emacs ......挑选你的毒药,两者都会处理你扔给它们的任何文件。我个人更喜欢Emacs,但两者都会打败记事本,而不是打嗝。 - Mike Stone
Emacs具有最大缓冲区大小,取决于底层架构(32位或64位)。我认为在32位系统上,大于128 MB的文件会出现“超出最大缓冲区大小”错误。 - Rafał Dowgird
我刚刚尝试使用带有561MB日志文件的Notepad ++,它说它太大了 - barfoon
@Rafal很有意思!看起来在64位上它是~1024 PB。原因与emacs必须跟踪缓冲区位置(例如点)的事实有关 - baudtack
但是要小心,只要有问题的文件有足够的换行符,vim就会起作用。我曾经不得不编辑一个ca.没有任何换行符的150 MB文件,并且由于vim无法处理它而不得不求助于gedit。 - Benno


你为什么用 编者 到了  在一个(大)文件?

在* nix或 Cygwin的,只需少用(“少即是多”,只有更好,因为你可以备份)。搜索和导航  非常相似 VIM,但没有使用交换文件和少量RAM。

有一个土生土长的人 Win32的 GNU端口“少”。请参阅下面的评论。

抄袭下面的一些评论,Perl的“..”(范围翻转/翻转)运算符是一个很好的选择机制,以限制你必须涉及的问题。

例如:

$ perl -n -e 'print if ( 1000000 .. 2000000)' humongo.txt | less

(从100万行开始,在200万行停止,以“减少”手动筛选输出)

$ perl -n -e 'print if ( /interesting regex/ .. /boring regex/)' humongo.txt | less

(当“有趣的正则表达式”找到某些东西时开始,当“无聊的正则表达式”找到一个有趣块的结尾时停止 - 可能找到多个块,筛选输出......)

最后,100 MB不是太大。 3 GB变得有点大。我曾经在印刷和邮件工厂工作,创造了大约2%的美国头等邮件。我作为技术主管的系统之一约占邮件的15%以上。我们在这里和那里有一些大文件要调试。

社区维基建议:

使用LogParser查看文件:

logparser.exe -i:textline -o:tsv "select Index, Text from 'c:\path\to\file.log' where line > 1000 and line < 2000"

logparser.exe -i:textline -o:tsv "select Index, Text from 'c:\path\to\file.log' where line like '%pattern%'"

166



+1,我最近有一些非常庞大的xml文件(+1千兆字节),我需要看一下。我在Windows上,vim,emacs,notepad ++和其他几个编辑器完全被文件阻塞到我的系统在尝试打开文件时几乎无法使用的程度。过了一会儿,我意识到实际尝试在-editor中打开文件是多么不必要 - 当我只需要查看它时。使用cygwin(和一些聪明的grep / less / sed-magic)我很容易找到我感兴趣的部分并且可以毫不费力地阅读它。 - wasatz
你不需要cygwin,你也可以在windows下使用它: gnuwin32.sourceforge.net/packages/less.htm - ChristophK
这个 XML编辑器 这里还有一个大型文件查看器组件,并且还为大文件提供语法着色。文件未完全加载到内存中,因此多GB文档应该不是问题。此外,该工具还可以验证那些大型XML文档......在我看来,这是处理大量XML数据的最佳方法之一。 - lichtfusion
好的,我只是解决了自己的问题。 less 用自动换行很慢。 less -S 没有自动换行即使在大线上也能快速闪电。我又开心了! - Andy Brown
很好的答案。我想要注意的是,如果你安装了Git for Windows,你可能也有Git bash,其中包括 less。 - transistor1