Как прочитать текстовый файл размером около 2 ГБ? [дубликат]


этот вопрос уже есть ответ здесь:

У меня есть .txt файл, память которого составляет более 2 ГБ. Проблема в том, что я не могу открыть его с помощью Notepad, Notepad++ или любых других программ редактора.

какие решения?

10 129

10 ответов:

попробовать Глега. быстрый, умный обозреватель журналов.

Я открыл файл журнала размером около 2 ГБ и поиск также очень быстро.

WordPad откроет любой текстовый файл независимо от размера. Однако он имеет ограниченные возможности по сравнению с текстовым редактором.

вместо загрузки / чтения всего файла, вы можете использовать инструмент для разделить текстовый файл на более мелкие куски. Если вы используете Linux, вы можете просто использовать split (см. этот поток stackoverflow). Для Windows, есть несколько инструментов, такие как HJSplit (см. этот поток суперпользователя).

Я использую UltraEdit для редактирования больших файлов. Максимальный размер, который я открываю с помощью UltraEdit, составлял около 2,5 ГБ. Также UltraEdit имеет хороший шестнадцатеричный редактор по сравнению с Notepad++.

EmEditor работает довольно хорошо для меня. Это условно-бесплатный IIRC, но не перестает работать после истечения срока действия лицензии..

Если вам нужно только прочитать файл, я могу предложить большой просмотр текстовых файлов. https://www.portablefreeware.com/?id=693

а также ссылаться на это

текстовый редактор для открытия больших (гигантских, огромных, больших) текстовых файлов

еще если вы хотите сделать свой собственный инструмент попробовать это . я предполагаю, что вы знаете filestream reader в 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

попробовать Vim, emacs (имеет низкий максимальный размер буфера при компиляции в 32-битном режиме), hex инструменты

есть довольно много инструментов, доступных для просмотра больших файлов. http://download.cnet.com/Large-Text-File-Viewer/3000-2379_4-90541.html Вот, например. Однако мне удалось просмотреть большие файлы в Visual studio. Думал, что это заняло некоторое время, чтобы загрузить, это сработало.

для чтения и редактирования, Geany для Windows - это еще один хороший вариант. Я запустил, чтобы ограничить проблемы с Notepad++, но еще не с Geany.