2012-07-18 3 views
0

애플릿에서 getCodeBase()를 사용하여 간단한 이미지를 표시하고 싶지만 애플릿을 실행할 때 아무 것도 표시되지 않거나 Eclipse에서 구문 오류가 발생합니다. getImage 메서드의 String 인수에. 내 오류는 "구문 오류 : 잘못된 이스케이프 시퀀스입니다. \ b \ n \ f \"\ '허용되었습니다. "자바 애플릿에서 이미지를 표시하는 Eclipse

내 이미지는 C : \ Java \ eclipse \ Images (Java) \ ball.gif에 저장됩니다. 이 때문에 반환 HTTP 그냥 몇 가지 팁

import java.awt.*; 
import java.applet.*; 
public class Image1 extends Applet { 
    private static final long serialVersionUID = 1L; 
    Image pic; 
    public void init(){ 
     pic = getImage(getCodeBase(), "\Images(Java)\ball.gif"); 
    } 
    public void paint(Graphics g){ 
     g.drawImage(pic,0,0,this); 
     g.drawImage(pic, 100,100,125,100,this); 
    } 
} 
+0

으로 OK입니다 기억으로 당신은 자바 [여기] (http://docs.oracle.com/javase/tutorial/java/에서 이스케이프 문자에 대한 자세한 내용을보실 수 있습니다 data/characters.html) –

+0

1) 애플릿을 실행하는 데 사용되는 HTML은 무엇입니까? 2) 이미지 경로의 모든 슬래시는 URL이어야하므로 백 슬래시 (Windows 전용) 파일 경로와 달리 슬래시'/'를 사용하십시오. 3) 문자열에서 선행 bcak 슬래시를 제거하십시오. 이는 '사이트의 루트'를 의미하기 때문입니다. 이 경우 'C : \ Images (Java) \ ball.gif'의 경로와 같습니다. –

+0

제가 이클립스로 작성했기 때문에 HTML을 사용하지 않았습니다. – imulsion

답변

0

...

  • A) 당신은 getCodeBase() 방법으로 지역 이미지를 얻을 수 없습니다 : // ... 애플 리케이션 여기

    내 코드입니다 위치 경로를 지정하십시오. 당신의 IDE의 경우, HTTP는 단지 필요한 경우
  • B)가 AppletViewer
  • C)로 테스트 대신 실제 호스트의 사용자 애플릿을 배포하는 getCodeBase() 당신이 가진 호스트의 이미지를 얻으려면 ... 사용할 수 없습니다 IDE에서 애플릿을 테스트하기위한 이미지는 을 ImageIO으로 간단하게 가져올 수 있습니다. 내가 AppletViewerio.*; LIB

행운

+0

OK ... 당신은 ** 어떻게 **하지 않겠습니까?하지만 어떻게 할 것인가? – imulsion

+0

애플릿이 Eclipse에 있으므로 애플릿이 배포되지 않았다고 가정합니다. 아직 전개되어 있지 않은 경우, 애플릿의 HOST 루트만을 돌려주기 때문에 getCodeBase()를 사용할 수 없습니다. 배포하기 전에 애플릿을 테스트하기 만하면 C 단계를 읽습니다. 애플릿의 호스트 모드로 이미지를 취득하고 싶은 경우는, 스텝 B를 읽어주세요. 전체 그림을 보려면 getImage (..., ...) 메소드 코드를 ... 표시하십시오. – user592704

관련 문제