2011-04-28 4 views
2

int 값을 만들려고합니다. 매 초마다 카운터가 올라가고 프로그램을 닫으면 값이 저장됩니다. .txt 파일을 만든 다음 프로그램을 다시 시작하고 파일에서 int 값을 읽은 다음 해당 값에서 다시 계속해야하지만 올바르게 저장하면 파일이 만들어 지지만 시작할 때 내 프로그램을 다시 실행하면 .txt 파일에 저장된 값이 아닌 1에서 다시 시작됩니다.내 프로그램이 파일을 읽지 못했습니다.

int 값 :

 MrStanReadFile r = new MrStanReadFile(); 
    r.openFile(); 
    r.readFile(); 
    r.closeFile(); 

내에서 ReadFile 클래스 :

public int getPoints(){ 
    return points; 
} 

public void setPoints(int points){ 
    this.points = points; 
} 

MrStan.class

에 위치한

public int points; 

게터와 세터, 내가 파일을 읽고 있어요 방법 :

public class MrStanReadFile { 

private Scanner x; 
MrStan a = new MrStan(); 

public void openFile(){ 
    try{ 
     x = new Scanner(new File("D:/MrStan/text.txt")); 
    }catch(Exception ex){ 
     System.out.println("COULD NOT FIND TEXT.TXT"); 
    } 
} 

public void readFile(){ 
    while(x.hasNext()){ 
     String p = x.next(); 
     int pointset = Integer.parseInt(p); 
     a.setPoints(pointset); 
    } 
} 

public void closeFile(){ 
    x.close(); 
} 

}는 INT 사용

다른 장소 :

Todotask :

public MrStan(){ 
    timer.schedule(new todoTask(), 0, 1 * 1000); 
} 

class todoTask extends TimerTask{ 
    public void run(){ 
     points++; 
     repaint(); 
    } 
} 

private Timer timer = new Timer(); 

 g.drawString("Points: " + points, 75, 83); 

좋아을의 ReadFile을 방법에서, 당신은 문자열을 볼 수 있습니다 p는 텍스트 파일의 문자열입니다. Integer.parseInt()를 사용하여 문자열을 int로 변환 한 다음 변환 된 pointset 값에 int 값을 설정했지만 변경되지 않습니다. 내 프로그램이 어떻게 작동하여 입력 된 숫자에서 시작될 것입니까? .txt 파일?

+0

또한 MrStan.setPoints 코드와 해당 정수를 사용하는 코드를 게시하는 것이 좋습니다. 값을 설정하거나 사용 중 오류가 발생했습니다 ... – helios

+0

"하지만 변경되지 않습니다". 변화가없는 것은 무엇입니까? 점 집합의 값은? 문제의 범위를 좁힐 수 있습니까? –

+0

프로그램이 시작되는 int 값은 파일의 int 값에서 시작해야합니다. – Stan

답변

0
  1. 출력을 확인 했습니까 "COULD NOT FIND TEXT.TXT"?
  2. 은 다른 곳 this.points = 0;이없는 있는지 확인 int pointset = Integer.parseInt(p);
  3. System.out.println("Read: "+ pointset); 권리를 추가합니다.
  4. MrStan a = new MrStan();MrStanReadFile 안에 정의합니다. class todoTask에서 사용하는 것과 같은 대상인지 확인하십시오.
+0

1. 출력이 없습니다. 2. 파일을 빨간색으로 표시하고 파일에있는 내용을 인쇄합니다. 3. 모르겠다. 4. MrStan.class의 메소드를 사용해야한다. getPoints는 작동하지만 setPoint는 작동하지 않는 것 같습니다. – Stan

+0

@Stan 전체 todoTask 클래스 게시 – Aleadam

관련 문제