Using ObjectOutputStream and ObjectInputStream in java, displaying the data in the file line by line on the screen - Stack Overflow
[Java] Help Loading Objects Using ObjectInputStream
StreamCorruptedException with ObjectInputStream iteration
I think the basic problem is that you're appending the existing file, which doesn't work well ObjectOutputStream, since it appends a header at the start of its stream. Then when you read the file, your code expects only a single ObjectStream, but it is actually multiple streams appended together.
I think the simplest solution, if possible, would be to have your writeToScoreList() method accept a list/array/etc of all the players, which could then be written with a single ObjectOutputStream, without having to append the existing file.
Another possible solution is described in this StackOverflow question. You can create a subclass of ObjectOutputStream that overrides the writeStreamHandler() so that it only calls reset(), and doesn't actually write anything. Then, if your file exists (resulting in your appending the file) you can use your subclass as the ObjectOutputStream; otherwise you can use the normal ObjectOutputStream class.
Another possible solution might be to change your writeFromScoreList() method so that it creates a new ObjectInputStream for each object that you read (since you're similarly creating an ObjectOutputStream for each object that you write).
More on reddit.com