대용량엑셀파일 다운로드시 파일이름 뒤에 난수


ABC라는 이름으로 엑셀파일을 만드려고 다운로드를 하면

ABC6582961549366421049 이런식으로 저장이되서 파일이름이 만들어지는 경로를 따라가봤는데 java.io.File에 createTempFile이라는 메서드안에

private static final SecureRandom random = new SecureRandom(); static File generateFile(String prefix, String suffix, File dir) { long n = random.nextLong(); if (n == Long.MIN_VALUE) { n = 0; // corner case } else { n = Math.abs(n); } return new File(dir, prefix + Long.toString(n) + suffix); }

(File.class안에 내용)

이런식으로 되있는데 해결방법이있을까요?

  • 2016년 02월 19일에 작성됨

조회수 268


1 답변


서버에서 엑셀파일을 다운로드하게 해 주고 싶으신데 이미 만들어져 있는 코드를 보니 저렇게 되어 있더라는건가요? 그냥 createTempFile이라는 메서드 말고 다른걸 쓰시면 될것 같은데요.

아래와 같이 사용하고 있었다면

File f;
File directory;//어딘가 디렉토리가 지정되어 있겠져.
try{
    f = File.createTempFile("ABC","xls",directory);
}catch(Exception e){}

이렇게 바꾸면 되는거 아닌가요?

File f;
File directory;//어딘가 디렉토리가 지정되어 있겠져.
try{
    f = new File(directory,"ABC.xls");
}catch(Exception e){}
  • 2016년 02월 19일에 작성됨
    루비와 파이썬을 좋아합니다. 새로운 언어를 배우는것도 좋아해요. 모바일 게임도 조금 만들어 봤습니다.

로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close