2011-05-02 6 views
0

javamail api를 사용하여 Java 메일 클라이언트를 개발 중입니다. 가져 오기없이 첨부 파일 목록을 가져와야합니다. 먼저 첨부 파일 목록을 표시하고 특정 첨부 파일을 클릭 할 때보 다 데이터를 가져옵니다. 현재 모든 첨부 파일의 이름을 가져올 수 있지만 내 코드가 첨부 파일 데이터를 가져 오는 것 같아서 너무 오랜 시간이 걸립니다. 내 Gmail 계정에이 코드를 테스트 한 내 메일이 큰 첨부 파일을 가진 경우는 시간이 많이 걸리는javamail api를 사용하여 첨부 파일을 다운로드하지 않고 나열하십시오

private void getAttachmentList(Part part, List list) throws Exception{ 
    Object content = part.getContent(); 
    if(content instanceof Multipart){ 
     Multipart multiPart = (Multipart)content; 
     int no_of_part = multiPart.getCount(); 

     for(int i=0; i<no_of_part; i++){ 
      getAttachmentList(multiPart.getBodyPart(i), list); 
     } 
    }else{ 
     String disposition = part.getDisposition(); 

     if (disposition != null && disposition.equalsIgnoreCase(Part.ATTACHMENT)) { 
      String fileName = part.getFileName(); 
      if(fileName != null){ 
       list.add(fileName); 
      } 
     } 

    } 
} 

아래로 내 코드입니다. 어떤 도움을 주셔서 감사합니다. 미리 감사드립니다.

답변

0

이 앱에서 POP 또는 IMAP을 사용합니까?

POP를 사용하는 경우 IMAP을 사용하도록 수정하십시오. 후자는 헤더 만 다운로드하기 때문에 더 빠를 수도 있습니다.

관련 문제