ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Special User Sections > N.A.N.Y. 2019

NANY 2019 Entry - Huge Text/Log file reader

<< < (2/2)

chesterw:
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.

TaoPhoenix:

As for the test case, wouldn't a "concatenator" program work?
I'm not familiar with the inbuilt limits of basic desktop OS's but I presume somewhere a test file could be created!

Bonus:
How long is a complete human genome!!?
Be careful we aren't creating Gattaca with all the Nany's combined!
Wouldn't a version of your program be able to list each (code item?) of a genome in a vertical list?
Then you compare two genomes side by side and Compare?
I smell a Science Fiction story coming!

TaoPhoenix:
Meanwhile, I've had this old school streak, and I'm always fond of Back To Text, and this year's Nany's have several!
Yours is interesting in part for me because I am about to dabble learning the next level of serious chess again and in chess discussions you get these "oh, what was that Tal game again? The one where he played that Sacrifice such-and-such?"

So then you have your master lists of the game files, and FYI "Portable Game Notation" is very little more (on purpose) than text with certain headers. Way back for one of these Nany's I submitted a file reader, but it aged out I think somewhere near Win 7-8-10.
(Note to self: If I chatter enough, I recall things! My ancient Laptop is still XP!)

So anyway, Because this line numbers the file,  let's say you make little game snippets, I just grabbed any two of his wins, you know right where to go jump to later to go get the game again (which could later be imported into some other more fancy program).

see elsewhere for my remarks on Ham Radio's "component". So I could save portions of chess concepts I want to work on in Ham's program, and then copy the string into yours to find a matching game! Sure all the big boy dayabases can do that, but Old School!

:Thmbsup:

Navigation

[0] Message Index

[*] Previous page

Go to full version