Есть 6 частей, и вы должны найти самую длинную из них в строках.
File file = new File(inputFilePath);
try {
BufferedReader br = new BufferedReader(new FileReader(file));
String line;
int[] partCharCount = new int[6];
for(int c : partsCount)
c=0;
while((line=br.readLine())!=null)
{
String[] parts = line.split("\\s*-\\s*");
for(int i=0;i<parts.length; i++)
if(parts[i].length() > partCharCount[i])
partCharCount[i] = parts.length;
}
после этого вы должны снова прочитать этот файл, разбить каждую строку на части, как в этом коде, а затем добавить к каждой части пространства, чтобы достигнуть partsCount [i] + 1