Text files are simple. The problem is when you need to write them a few million times.
A strange error from the file (or operating) system causes the Java Virtual Machine to crash when you keep adding data to a given file.
Quick solution was reducing the number of writes using a buffer to cache a number of text lines before writing the data on disk.
This way was possible to reduce the need for such frequent/numerous write operations.
You find the most up-to-date source code on GitHub at this link.
Not difficult to use, initialize the class with the file you want to write. Then use the write() method for each event you want to store and in the end call the close() method to finish any pending operations.
That's it. :-)