Dado o arquivo contas.csv abaixo:
CC,12345,224488,Fulano da Silva,2000,00
CC,45678,336699,Beltrano da Costa,3000,58
CP,12345,113355,Cicrano Lima,60000,77e o código do main:
public static void main(String[] args) {
        try {
            Scanner scanner = new Scanner(new File("contas.csv"));
            String linha = "";
            Locale localeBr = new Locale("pt", "BR");
            while(scanner.hasNextLine()) {
                linha = scanner.nextLine();
                Scanner linhaScanner = new Scanner(linha);
                linhaScanner.useLocale(localeBr);
                linhaScanner.useDelimiter(",");
                String tipoConta = linhaScanner.next();
                int agencia = linhaScanner.nextInt();
                int numero = linhaScanner.nextInt();
                String titular = linhaScanner.next();
                double saldo = linhaScanner.nextDouble();
                System.out.format(localeBr, "%2s | %05d | %08d | %s | %,.2f %n", tipoConta, agencia, numero, titular, saldo);
                linhaScanner.close();                
            }            
            scanner.close();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }Ao utilizar o Locale pt_BR para o Scanner juntamente com o delimitador "," o código de leitura do contas.csv deixa de ler todos os elementos do arquivo.
Isto acontece porque a parte decimal do saldo no csv também é representado por vírgula e, por isso, o código proposto na aula entende como se fosse um novo elemento.
Segue saída:
CC | 12345 | 00224488 | Fulano da Silva | 2.000,00
CC | 45678 | 00336699 | Beltrano da Costa | 3.000,00    // sem a parte decimal
CP | 12345 | 00113355 | Cicrano Lima | 60.000,00    // sem a parte decimalA melhor opção neste caso seria alterar o delimitador do arquivo contas.csv para algo como ";" ?
E outra, como funciona o linhaScanner.next() quando existe um caractere (no texto que será lido do contas.csv) igual ao delimitador definido? Existe alguma outra solução utilizada? Porque ao que tudo indica, ocorrerá o mesmo problema.
 
            