참고 :이 문제에 대한 답변을 원하지 않으므로 직접 가르치고 싶지만 멈춰서 무엇을해야할지 조언 해주십시오.JAVA : 사용할 문자열 다음에 구분 기호를 다시 설정하십시오 .nextDouble
연습을 위해 입력 파일을 읽고 반향시켜야합니다.
이연습 문제는 ATM 거래를 만드는 것입니다, 입력 파일의 한 줄을 읽 스테이시 존스, 300 D 100
내가 같이 출력이 있습니다
name
current balance
action (D means deposit)
transaction amount
내가 현재 가지고 이름, 그리고 현재의 균형을 얻으려면 나는 현재의 균형 (예 : 300) 전에 공백이 아직 있다는 것입니다 내 문제는 쉼표로 라인을 끝내기 위해 구분 기호를 변경
여기 내 코드입니다 :
try {
FileInputStream stream = new FileInputStream("src/transactions.txt");
fileIn = new Scanner(stream);
fileIn.useDelimiter(",");
name = fileIn.next();
System.out.println("Customer Name: " + name);
fileIn.reset();
balance = fileIn.nextDouble();
System.out.printf("Checking balance before transaction: %.2f", balance);
} catch (FileNotFoundException e) {
System.out.println("Transactions cannot be found");
}
내가 받고 오전 오류는 다음과 같습니다
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:857)
at java.util.Scanner.next(Scanner.java:1478)
at java.util.Scanner.nextDouble(Scanner.java:2404)
at MP3.main(MP3.java:30)
'Catch' * 표시 예외 * 같은 공간에서 델리 동료에게 두 번째 토큰을 다시하고 nextDouble''하려는 입력을 인쇄하면 문제를 이해할 수있을 수 있습니다. – Maroun
예외가 잡히고 System.out.println (fileIn)이 나에게 이것을 주었다. 구분 기호 = \ p {javaWhitespace} + – Joseph