我有一个内存大于2 GB的.txt文件。问题是我无法用Notepad,Notepad ++或任何其他编辑程序打开它。
任何解决方案?
答案 0 :(得分:135)
试试Glogg。 快速,智能的日志浏览器。
我打开了大小 2 GB 的日志文件,搜索也非常快。
答案 1 :(得分:91)
写字板将打开任何文本文件,无论大小。但是,与文本编辑器相比,它的功能有限。
答案 2 :(得分:47)
您可以使用工具以较小的块分割文本文件,而不是加载/读取整个文件。如果您使用的是Linux,则可以使用 split
命令(请参阅this stackoverflow thread)。对于Windows,有几种工具可用,如 HJSplit (参见this superuser thread)。
答案 3 :(得分:11)
我使用UltraEdit编辑大文件。我用UltraEdit打开的最大大小约为2.5 GB。与Notepad ++相比,UltraEdit还有一个很好的十六进制编辑器。
答案 4 :(得分:9)
答案 5 :(得分:9)
我总是使用010 Editor打开大文件。它可以轻松处理2 GB。我使用010编辑器操作 50 GB 的文件: - )
它现在已商业化,但它有试用版。
答案 6 :(得分:8)
如果您只需要阅读文件,我可以建议大文本文件查看器。 https://www.portablefreeware.com/?id=693
并参考此
Text editor to open big (giant, huge, large) text files
否则,如果您想制作自己的工具,请试试这个。我认为你知道c#
中的文件流阅读器const int kilobyte = 1024;
const int megabyte = 1024 * kilobyte;
const int gigabyte = 1024 * megabyte;
public void ReadAndProcessLargeFile(string theFilename, long whereToStartReading = 0)
{
FileStream fileStream = new FileStream(theFilename, FileMode.Open, FileAccess.Read);
using (fileStream)
{
byte[] buffer = new byte[gigabyte];
fileStream.Seek(whereToStartReading, SeekOrigin.Begin);
int bytesRead = fileStream.Read(buffer, 0, buffer.Length);
while(bytesRead > 0)
{
ProcessChunk(buffer, bytesRead);
bytesRead = fileStream.Read(buffer, 0, buffer.Length);
}
}
}
private void ProcessChunk(byte[] buffer, int bytesRead)
{
// Do the processing here
}
请参考此
http://www.codeproject.com/Questions/543821/ReadplusBytesplusfromplusLargeplusBinaryplusfilepl
答案 7 :(得分:4)
答案 8 :(得分:2)
有大量可用于查看大文件的工具。 http://download.cnet.com/Large-Text-File-Viewer/3000-2379_4-90541.html 这就是这个例子。 但是,我在Visual Studio中查看较大的文件是成功的。认为它需要一些时间来加载,它工作。
答案 9 :(得分:2)
对于阅读和编辑,Geany for Windows是另一个不错的选择。我试图限制Notepad ++的问题,但还没有使用Geany。