File.ReadList reads each line of the file and presumes that one line = one value. But in some cases, the values are written by File.WriteList on more than one line.
To reproduce this bug, you can use this declaration:
B4X:
Type typItem(LayoutName As String, ID As Int, Top As Int)
Private ulvItems As List