이 코드는 파일에 쓰는 대신 계속 형식을 지정합니다. 어떻게 고치나요?

Thabiso Motswagole

여기에 배열과 변수를 선언했습니다. productList 배열, 이름, 가격 및 번호

import java.io.*;
import java.util.*;

public class ReadingAndWritting {

  public String name;
  public double price;
  public int number;
  public ReadingAndWritting[] productList = new ReadingAndWritting[3];

  public ReadingAndWritting() {

  }

  public ReadingAndWritting(String name, double price, int number) {

    this.name = name;
    this.price = price;
    this.number = number;

  }

  public void printContents() {

    int i = 0;

    try {

      FileReader fl = new FileReader("Product List.txt");

      Scanner scn = new Scanner(fl);

      while (scn.hasNext()) {

        String productName = scn.next();

        double productPrice = scn.nextDouble();

        int productAmount = scn.nextInt();

        System.out.println(productName + " is " + productPrice + " pula. There are " + productAmount + " items left in stalk.");

        productList[i] = new ReadingAndWritting(productName, productPrice, productAmount);

        i = i + 1;

      }

      scn.close();

    } catch (IOException exc) {

      exc.printStackTrace();

    } catch (Exception exc) {

      exc.printStackTrace();

    }

  }

  public void writeContents() {

    try {

      //FileOutputStream formater = new FileOutputStream("Product List.txt",true);

      Formatter writer = new Formatter(new FileOutputStream("Product List.txt", true));

      for (int i = 0; i < productList.length; ++i) {

        writer.format(name, (price + 100.0), (number - 1), "\n");

      }

      writer.close();

    } catch (IOException exc) {

      exc.printStackTrace();

    }

  }

  public static void main(String[] args) {

    ReadingAndWritting obj = new ReadingAndWritting();

    System.out.println("_____THIS IS THE BEGINNING OF THE PRODUCT LIST_____");

    obj.printContents();

    System.out.println("_____THIS IS THE END OF THE PRODUCT LIST_____");

    System.out.println("_____THIS IS THE BEGINNING OF THE PRODUCT LIST_____");

    obj.writeContents();

    obj.printContents();

    System.out.println("_____THIS IS THE END OF THE PRODUCT LIST_____");

  }

}

코드를 실행할 때마다 기존 파일의 형식을 지정하고 NullPointerException을보고합니다. 나는 이것을 고치는 방법에 대해 완전히 잃어 버렸고 강사는 그것을 다루지 않았습니다. 부디

productList [] 배열에는 각 식별자에 포함 된 이름, 가격 및 숫자 값이 있습니다. 기존 파일의 내용을 지우고 새 값으로 작성하여 배열의 내용을 업데이트하고 싶습니다.

있었다

사용중인 생성자는 Javadoc에 명확하게 명시된대로 입력 파일을 자릅니다.

fileName 이 포맷터의 대상으로 사용할 파일의 이름입니다. 파일이 존재 하면 0 크기잘립니다 . 그렇지 않으면 새 파일이 생성됩니다. 출력은 파일에 기록되고 버퍼링됩니다.

Formatter(OutputStream os)잘림을 방지하기 위해 다른 생성자를 사용할 수 있습니다 .

Formatter writer = new Formatter(new FileOutputStream("Product List.txt",true));

에 대한 NullPointerException귀하의 의견을보고 :

 public String name; 

name초기화되지 않았으므로 null기본적으로 NullPointerException.

PS 내가 모르는 productList이름과 당신이 그것을 반복된다는 사실에 기초, 아마도 당신이 얻을해야함으로써, price그리고 name그 목록의 요소에서.

편집하다 :

나머지 코드를 기반으로 productList배열 에서 값을 가져와야합니다.

  for (int i = 0; i < productList.length; ++i) {

    writer.format(productList[i].name, (productList[i].price + 100.0), (productList[i].number - 1), "\n");

  }

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

파이썬에서 삼각형 최대 경로 합계에 대해 찾은이 코드가 어떻게 작동하는지 이해하려고합니다.

분류에서Dev

섹션이있는 UITableView에 대한 수신 JSON 형식을 어떻게 지정해야합니까?

분류에서Dev

txt 파일을 각각의 새 스트림으로 덮어 쓰는 대신 데이터를 결합하는 코드를 어떻게 얻을 수 있습니까?

분류에서Dev

내가 파일 입력에 사용자를 요청하고, 파일이 존재하지 않는 경우, 어떻게 프로그램 중단하지 않고 파일 이름에 대한 요청을 계속 할 수 있습니까?

분류에서Dev

텍스트 형식을 잃지 않고 beautifulsoup을 사용하는 웹 페이지에서 HTML 코드를 어떻게 긁어 내나요?

분류에서Dev

이 일치에 대한 정규식을 어떻게 만드나요?

분류에서Dev

데이터베이스-계산 속도의 새로운 변경이 새 레코드에만 영향을 미치는지 어떻게 확인합니까?

분류에서Dev

"지난 일요일"또는 "다음 월요일"과 같은 시간 문자열을 파이썬에서 datetime 형식으로 어떻게 변환합니까?

분류에서Dev

laravel에서 레코드를 업데이트하는 데 문제가 있습니다. 어떻게 고치나요?

분류에서Dev

속성의 중요도에 따라 일대 다 관계가있는 레코드를 계산하려면 어떻게해야합니까?

분류에서Dev

이동 가능하거나 다른 저널에 속할 수있는 페이지에 대한 연결을 어떻게 설정합니까?

분류에서Dev

특정 파일 형식에 대해 "이 파일을 열시겠습니까?-알 수없는 게시자"보안 경고를 비활성화합니다.

분류에서Dev

고정 된 시간 간격으로 배치 파일에서 코드 조각을 실행하는 방법은 2 시간이고 나머지 코드를 계속 진행합니까?

분류에서Dev

pentaho에서 형식이 좋지 않은 XML 파일을 어떻게 무시하고 나머지를 계속할 수 있습니까?

분류에서Dev

파일을 덮어 쓰지 않고 대신 Python의 기존 파일에 숫자를 추가하여 다른 txt 파일과 동일한 이름으로 파일을 만드는 방법은 무엇입니까?

분류에서Dev

명령 프롬프트를 사용하여 이미지 파일 (폴더에있는)을 하나의 파일로 덮어 쓰려면 어떻게합니까?

분류에서Dev

나는 그것이 정말로 중요하다는 것을 깨닫지 못하고 파이썬을 제거했습니다. 어떻게해야합니까?

분류에서Dev

각 노드는 영역 속성으로 레이블을 지정해야합니다. 그러나 어떻게?

분류에서Dev

파일 목록을 형식 변환기에 공급하는 배치 파일을 어떻게 작성합니까?

분류에서Dev

코로나에서이 코드로 이메일을 보내는 기능을 어떻게 호출합니까?

분류에서Dev

지정된 위치에서 파일 내용을 덮어 쓰고 나머지는 자릅니다.

분류에서Dev

JSON에 대한 많은 것과 같이 Clojure 코드를 자동 들여 쓰기하고 형식을 지정하는 온라인 도구가 있습니까?

분류에서Dev

Visual Studio Code가 Windows에서 코드 형식을 지정하는 방식을 어떻게 변경합니까?

분류에서Dev

다른 속성 파일을 "포함"하는이 속성 파일은 정확히 어떻게 작동합니까?

분류에서Dev

다형성 연관이있는 하나의 모델에 대해서만 검증을 지정하려면 어떻게해야합니까?

분류에서Dev

C #에서 콘솔 대신 웹 페이지에 어떻게 쓰나요?

분류에서Dev

신속한 JSONEncoder ()는 신속한 NSDate / 데이터 유형을 어떻게 인코딩합니까?

분류에서Dev

Crystal Report에서 데이터가 두 번째 레코드로 계속되는 것을 어떻게 중지합니까?

분류에서Dev

속성이 주어진 범위 내에서 고유해야한다는 것을 어떻게 정의합니까?

Related 관련 기사

  1. 1

    파이썬에서 삼각형 최대 경로 합계에 대해 찾은이 코드가 어떻게 작동하는지 이해하려고합니다.

  2. 2

    섹션이있는 UITableView에 대한 수신 JSON 형식을 어떻게 지정해야합니까?

  3. 3

    txt 파일을 각각의 새 스트림으로 덮어 쓰는 대신 데이터를 결합하는 코드를 어떻게 얻을 수 있습니까?

  4. 4

    내가 파일 입력에 사용자를 요청하고, 파일이 존재하지 않는 경우, 어떻게 프로그램 중단하지 않고 파일 이름에 대한 요청을 계속 할 수 있습니까?

  5. 5

    텍스트 형식을 잃지 않고 beautifulsoup을 사용하는 웹 페이지에서 HTML 코드를 어떻게 긁어 내나요?

  6. 6

    이 일치에 대한 정규식을 어떻게 만드나요?

  7. 7

    데이터베이스-계산 속도의 새로운 변경이 새 레코드에만 영향을 미치는지 어떻게 확인합니까?

  8. 8

    "지난 일요일"또는 "다음 월요일"과 같은 시간 문자열을 파이썬에서 datetime 형식으로 어떻게 변환합니까?

  9. 9

    laravel에서 레코드를 업데이트하는 데 문제가 있습니다. 어떻게 고치나요?

  10. 10

    속성의 중요도에 따라 일대 다 관계가있는 레코드를 계산하려면 어떻게해야합니까?

  11. 11

    이동 가능하거나 다른 저널에 속할 수있는 페이지에 대한 연결을 어떻게 설정합니까?

  12. 12

    특정 파일 형식에 대해 "이 파일을 열시겠습니까?-알 수없는 게시자"보안 경고를 비활성화합니다.

  13. 13

    고정 된 시간 간격으로 배치 파일에서 코드 조각을 실행하는 방법은 2 시간이고 나머지 코드를 계속 진행합니까?

  14. 14

    pentaho에서 형식이 좋지 않은 XML 파일을 어떻게 무시하고 나머지를 계속할 수 있습니까?

  15. 15

    파일을 덮어 쓰지 않고 대신 Python의 기존 파일에 숫자를 추가하여 다른 txt 파일과 동일한 이름으로 파일을 만드는 방법은 무엇입니까?

  16. 16

    명령 프롬프트를 사용하여 이미지 파일 (폴더에있는)을 하나의 파일로 덮어 쓰려면 어떻게합니까?

  17. 17

    나는 그것이 정말로 중요하다는 것을 깨닫지 못하고 파이썬을 제거했습니다. 어떻게해야합니까?

  18. 18

    각 노드는 영역 속성으로 레이블을 지정해야합니다. 그러나 어떻게?

  19. 19

    파일 목록을 형식 변환기에 공급하는 배치 파일을 어떻게 작성합니까?

  20. 20

    코로나에서이 코드로 이메일을 보내는 기능을 어떻게 호출합니까?

  21. 21

    지정된 위치에서 파일 내용을 덮어 쓰고 나머지는 자릅니다.

  22. 22

    JSON에 대한 많은 것과 같이 Clojure 코드를 자동 들여 쓰기하고 형식을 지정하는 온라인 도구가 있습니까?

  23. 23

    Visual Studio Code가 Windows에서 코드 형식을 지정하는 방식을 어떻게 변경합니까?

  24. 24

    다른 속성 파일을 "포함"하는이 속성 파일은 정확히 어떻게 작동합니까?

  25. 25

    다형성 연관이있는 하나의 모델에 대해서만 검증을 지정하려면 어떻게해야합니까?

  26. 26

    C #에서 콘솔 대신 웹 페이지에 어떻게 쓰나요?

  27. 27

    신속한 JSONEncoder ()는 신속한 NSDate / 데이터 유형을 어떻게 인코딩합니까?

  28. 28

    Crystal Report에서 데이터가 두 번째 레코드로 계속되는 것을 어떻게 중지합니까?

  29. 29

    속성이 주어진 범위 내에서 고유해야한다는 것을 어떻게 정의합니까?

뜨겁다태그

보관