2012-09-21 4 views
0

FileNameyyyyMMddhhmmss.csv 형식의 파일을 검색하는 코드를 작성했습니다.java에서 파일 이름을 검색하는 Dir 명령

내 Java 코드에서 다음 FileNameyyyyMMdd * .csv (정규 표현식)를 사용하여 파일을 찾고있었습니다. (HHMMSS이 다른 것입니다 서로 다른 타임 스탬프) 예를

FileNameyyyyMMddhhmmss.csv 그리고 FileNameyyyyMMddhhmmss.csv에 대해 같은 초기 이름 dir 명령의 작업을 수행하는 방법

두 개의 파일이 그러나합니다. 디렉토리를 탐색 할 때 어떤 파일이 먼저 선택됩니까? 두 개의 dir 명령이 동일한 코드에서 사용되는 경우 다른 질문은 두 번째 dir 명령 사용시 올바른 파일을 선택합니까?

+2

'java.io.File.listFiles (FileFilter filter)'메서드를 사용하십시오. – adatapost

답변

1

주석에서 제안한대로 FileFilter 클래스를 사용하십시오. 가장 오래된 파일을 먼저 정렬하려면 'dir/O D'를 실행하십시오. 이 방법을 사용하면 dir의 한 구현에 의존 할 필요가 없습니다 (Windows 버전간에 변경된 경우에 대비하여 의심 스럽지만 여전히 코드에서 가정을하는 것은 나쁘다). 그리고 어느 파일이 먼저 오는지를 확신 할 수 있습니다.

두 번째 질문도 확실하지 않습니다. 정교하게 주시겠습니까?

+0

코드를 실행하면 dir 명령이 디렉토리의 첫 번째 파일을 선택하고 다음 파일로 이동합니다. 그러나 파일 순서를 수동으로 변경하면 디렉토리의 첫 번째 파일이 선택됩니다 위로부터. 그래서 디렉토리가 파일의 배열에 따라 위에서 아래로 전체 디렉토리를 탐색하거나 첫 번째 파일을 가져 오는 자체 절차가 있는지 여부를 정확하게 파악할 수 없습니다. – MindBrain

관련 문제