¿Cómo dividir una Lista <String> devuelta por comas de un archivo de texto?

Estoy leyendo un archivo de texto ( usernames.txt) que tiene valores separados por comas:

AA328747, AA337748, AA057393, AA290457, AA467620, AA225950, AA352105, AA108183, AA057070,

usando mi método:

public static List<String> readUsername(String path){

        File file = new File(path);     
        Reader fileReader;
        List<String> list = new ArrayList<String>();
        String username;

        try 
        {
            fileReader = new FileReader(file);
            BufferedReader br = new BufferedReader(fileReader);
            username = br.readLine();

            while (username != null)
            {
                list.add(username);
                username= br.readLine();
            }

            br.close();
        } 
        catch (FileNotFoundException e)
        {
            e.printStackTrace();
        } 
        catch (IOException e) 
        {
            e.printStackTrace();
        }           

        return list;        
    }

Y trato de imprimirlo en la consola:

List<String> usernameList = readUsername(fileStr);

    for (int i=0; i < usernameList.size(); i++)
    {
        System.out.println(usernameList.size());
        System.out.println(usernameList.get(i) + " end");
    }

donde fireStres solo mi cadena de archivo de ruta.

Y se imprime bien, pero el tamaño del objeto de lista ( usernameList.size()) es solo 1.

La impresión es:

AA328747, AA337748, AA057393, AA290457, AA467620, AA225950, AA352105, AA108183, AA057070, final

Cómo quiero que se imprima es como:

Fin AA328747

Fin AA337748

AA057393 final

Fin AA290457

Extremo AA467620

Extremo AA225950

Extremo AA352105

AA108183 final

AA057070 final

Y el tamaño de la lista debería ser más que 1elementos (en mi ejemplo debería ser 9para nueve nombres de usuario en el archivo de texto).

¿Cómo me deshago de las comas y solo evalúo cada nombre de usuario como cadenas separadas en lugar de una cadena grande?

Respuesta 1

Creo que quieres el split()método. Puede usar Collections#addAllpara agregar directamente todos los elementos del Arrayproducido por splita List:

while (username != null)
{
     Collections.addAll(list, username.split(","));
     username= br.readLine();
}
Respuesta: 2

En Android, todos los objetos de fecha se dan en este tipo de formato de fecha "Lun Dic 03 00:13:21 GMT + 05: 30 2018" cuando lo convierte con SimpleDateFormat. ¿Hay alguna posibilidad de obtener un objeto Date en ...

Estoy usando Jasper Reports e iReport para generar los informes de mi aplicación. Necesito mostrar imágenes en mi informe dependiendo de una consulta en mi base de datos. Las imágenes son planos y tienen otros campos dentro ...

Estoy teniendo un comportamiento extraño que no entiendo. Tengo una clase MonologueTab: la clase pública final MonologueTab extiende VBox {nodo privado MonologueNode; WebView webView; ...

¿Es posible etiquetar la versión particular del archivo en Alfresco? Si es tan amable, guíame cómo lograrlo. Cualquier tipo de ayuda es apreciada.