Corrections, and added (Search) Again feature.
This program reads text files and log files of almost unlimited size.
It does this by reading the file in 1,000 line chunks.
If Reader.exe is called with a parameter, it tries to load that file.
If no parameter is given, or you just double-click on it from Explorer,
then the program starts without an initial file.
When the program first starts, click on the "Load File" button, navigate to
the folder where your file is located, and select the file to read. Repeat
the process to read a different file. Exit by clicking the X at the top right.
The program first counts lines in the file. If the file is huge, you may
see a "Counting lines in file..." message. Most often this happens too
quickly to see the message for small to medium sized files.
The first 1,000 lines are displayed, with the line number and then the contents
of the line. The line count is shown in the Edit Box at the bottom. Use the
scrollbars to scroll up, down, left, and right in that 1,000 line chunk of the
file. You can edit the text, but not save the file. You can use your mouse to
select text, and press <CTRL-C> to copy the text to the Windows Clipboard.
Click on "Next 1000" to see the next 1,000 lines of the file, if there are
that many lines.
Click on "Prev 1000" to see the previous 1,000 lines of the file, if past
line 1,000, or maybe the first 1,000 lines. If the file is large, you may
see a "Moving to previous page..." message.
Click on "Top" to see the first 1,000 lines of the file.
Click on "Bottom" to see the last 1,000 lines of the file. If the file is
large, you may see a "Moving to bottom of file..." message.
Click on "Search" to try to find lines that exactly match the text in the
Edit Box at the bottom. You are taken to the first line that matches. A
fresh chunk is loaded with the matching line on the top of the screen. If
NOT found, a message is displayed, and you see the first 1,000 lines of the
file. For a large file, you may see a "Searching..." message.
Click on "Again" to search again, starting at the next block (1,000 lines
after the top of the current block). The top line of the new block (assuming
a match) becomes the top of the new block. For example, suppose the first match
after line 1,000 of the file is on line 1,500: the block you are viewing becomes
line 1,500 through line 2,499.
Whenever a line contains the exact text in the Edit Box at the bottom, that
line shows up in blue. Even without doing a search: "Next 1000", "Prev 1000",
"Top", and "Bottom" will all show blue lines for exact matches.
Click on "Goto Line" to go to the line number in the Edit Box at the bottom
if the content in the Edit Box at the bottom is a valid integer and the
integer given is less than or equal to the line count. That line number
becomes the top of the screen. If the file is very large, you may see a
"Moving to the line..." message displayed while the correct chunk is located.
This program very powerful. It should be able to handle files up to
18,446,744,073,709,551,615 lines: that's 18 sextillion lines! Not sure how
to make a text file that big for testing purposes. Of course, working with
such a file would be slow. The initial line count would take many minutes,
as well as pressing the "Bottom" and "Prev 1000" buttons. Sticking with the
"Top" and "Next 1000" buttons on very large files should be the fastest.