SQLite is a typical choice for simple apps, therefore i mentioned it, but merely as an example. of course any database will do the job.
the point i'm trying to make is you should NOT load all files simultaneously to memory. only once the user has selected a file (by the five field criteria), that file is loaded and displayed. once the user is finished dealing with that file, dump the file from memory and load another one.
as for displaying and working with a file, another option you have is not to load the file in your app, but summon the all-mighty Excel to do it for you. Excel is ideal for simple tabular displays (and for rather more complex ones also, if you are familiar with VBA), and you can pre-format a template to be visually appealing and functional for your needs. Excel user interface is highly - and i cannot stress "highly" enough - customizable.
so, if you can manage the part where the user selects a file by the five field criteria, and you can display and work with the file, then what challenges are you still facing?