2009-07-30 5 views
3

Java는 콘솔로 출력 할 때 커서 제어를 지원합니까? 예를 들어, System.out.print()를 수행하기 전에 문자 위치와 색상을 설정하고 싶습니다. 최상위 애플리케이션이 콘솔에 쓰는 방식을 생각해보십시오. 감사!Java - Windows/Linux에서 콘솔 출력 제어

답변

0

직접적으로. 예전에는 ANSI 이스케이프 시퀀스가 ​​지원되었지만 더 이상은 지원되지 않았습니다.

Windows를 지원하는 Java Curses 라이브러리를 살펴 보는 것이 좋습니다. 나는 어떤 :(

3
당신은 일반적으로 이러한 것들을. * nix에서 스크립트 사용의 ncurses에서 대부분의 응용 프로그램 ( http://en.wikipedia.org/wiki/Ncurses)이 스마트 뭔가를해야하는 경우이를 위해. 당신은 http://sourceforge.net/projects/javacurses/을 시도 할 수 있습니다 할 System.out을 사용하지 마십시오

.

권장하지 않습니다

그러나 원하는 것을 삭제하고 싶을 때 항상 문자를 백 스페이스 (\ b)로 쓸 수 있으며 가장 좋은 것을 희망합니다.

+0

@ Nir Levy에 동의합니다. 그러나 이것은 매우 오래되었을 것 같지만 몇 가지 빠른 일회 설치 인터페이스라고 생각하십시오. 그런 다음 다시 한 번 귀하의 제약 조건이 무엇인지 모릅니다. 가능하다면 awt, swing 또는 [swt] (http://eclipse.org/swt/) – Miquel

1

하. 여전히 리눅스에서 할 수 있습니다. 코드 자체는이 매뉴얼 페이지를 참조하십시오. http://man7.org/linux/man-pages/man4/console_codes.4.html

public class quickTest{ 
    public static void main(String[] args){ 
      //This will undo the current line by erasing it 
      //and then putting the curser back at column 1 
     System.out.println("Hello.\u001b[1K\u001b[1GHi."); 
    } 
}