Olá, mesmo colocando useLocale(Locale.US); abaixo do construtor, ainda assim imprime com virgula separando as casas decimais, alguém sabe me dizer como faço para imprimir com pontos como esta no csv? OBS: So consegui fazendo String valorFormatado = String.format(new Locale("US") ,"%s - %04d-%08d, %s: %010.2f", tipoConta, agencia, numero, titular, saldo); , porém creio que não era para ser necessário por new Locale no inicio pois como havia dito, já tem acima.
public static void main(String[] args) throws Exception {
Scanner scanner = new Scanner(new File("contas.csv"));
while (scanner.hasNextLine()) {
String linha = scanner.nextLine();
//System.out.println(linha);
Scanner linhaScanner = new Scanner(linha);
linhaScanner.useLocale(Locale.US);
linhaScanner.useDelimiter(",");
String tipoConta = linhaScanner.next();
int agencia = linhaScanner.nextInt();
int numero = linhaScanner.nextInt();
String titular = linhaScanner.next();
double saldo = linhaScanner.nextDouble();
//System.out.println(tipoConta + agencia + numero + titular + saldo);
String valorFormatado = String.format("%s - %04d-%08d, %s: %010.2f", tipoConta, agencia, numero, titular, saldo);
System.out.println(valorFormatado);
linhaScanner.close();
}
scanner.close();
}