2013-08-30 5 views
0

테이블에서 데이터를 가져와 텍스트 영역에 표시하는 작은 프로그램을 작성했습니다.열의 조합에 대한 작은 시작 위치를 유지하기위한 Java 형식

문자 간격이 표시 될뿐만 아니라 문자 간격에 따라 들여 쓰기가 표시됩니다. 아무도이 문제를 해결할 방법을 알 수 있습니까? 각 열이 특정 시작 위치를 유지하기를 원합니다.

while (itr.hasNext()) { 

    abc = abc + String.format(
             "%-7s %3s %-7s %-3s %10s %-10s %10s  %-8s %-8s %-8s %-8s\n", 
             itr.next(), itr.next(), itr.next(), 
             itr.next(), itr.next(), itr.next(), 
             itr.next(), itr.next(), itr.next(), 
             itr.next(), itr.next()); 
              } 
    textArea.setText(abc); 
    textArea.setLineWrap(false); 
} 

답변

0

당신은 두 가지 선택 : 중 (사용자가 데이터를 변경 한 후, 어쨌든 너무 낮은 값을 될 수 있습니다) 또는 동적으로 각 열에있는 데이터의 최대 길이를 calcluate, 사용 충분히 큰 문자열의 길이를 사용 문자열 형식을 결정한 다음 해당 형식을 사용하여 데이터를 씁니다. 이렇게하려면 데이터를 두 번 반복해야합니다. 한 번 계산 한 다음 인쇄해야합니다.

+0

여기에 제목이 표시됩니다 ... 열의 조합에서 각 열에 대해 동일한 시작 위치를 유지하는 Java 서식 – user2054151

+0

@ user2054151 무슨 뜻인지 이해가되지 않습니다. – Dariusz