2009-08-28 5 views
0

여러 파일 양식 단일 디렉터리를 ...내가 말을 내가 할 노력하고있어 설명하기 위해 만들어 낸 코드를 사용하려고합니다 그래서 ATM을 위해 조금 잃었어요

foreach file in http://host.com/directory1/directory2/ 
    download file 

가 있습니까 다운로드 이해가 되니? 내 웹 사이트가 호스팅되는 웹 서버에서 지정된 디렉토리의 모든 파일을 다운로드하려고합니다. 한 번에 하나의 파일을 다운로드하는 방법을 알고 있지만 수천 개의 파일이 있으며 한 폴더 안에 모든 파일이 필요합니다. 흠 .. 아무에게도 조언 해 줄 수 있니?

덕분에

+1

디렉토리에있는 모든 파일의 목록이 있습니까? –

+0

호스트를 제어 할 수 있습니까? 그렇다면 플랫폼과 언어를 알려주십시오. – AnthonyWJones

답변

2

:-) HTTP 프로토콜은하지 (내가 아는 한) 파일 목록에 대한 모든 명령을 (- 파일 전송 프로토콜 FTP가 그 이유는) 가지고있다. 대신 FTP 연결을 사용하여 디렉토리에 액세스 할 수 있습니까? 그렇다면 list the directory contentsdownload the files 대신 FTP 요청을 사용할 수 있습니다.

0

만 HTTP 액세스를 가지고 있고

귀하의 유일한 선택은 응답에 전송 된 HTML에서 파일 세부 목록을 긁어 몇 가지 정규식을 사용하는 것입니다 ... 다음 서버를 제어 할 수없는 경우 물론 http://host.com/directory1/directory2/까지이며 물론 서버에서 사용할 수있는 디렉토리 목록에 달려 있습니다.

그런 다음 수집 된 파일 이름 집합을 반복하여 개별적으로 다운로드해야합니다.

0

내 호스트가 FTP 또는 스크립팅 또는 기타를 허용하지 않습니다. 하지만 정확히 얼마나 많은 파일이 각 폴더에 있는지 알고 있습니다.

그래서 내가 한 일은 for 루프에 넣는 것입니다. 일단 하드 드라이브에 다운로드 한 파일이 있으면 루프에서 벗어날 것입니다. . 답장을 보내 주셔서 감사합니다.

이상적인 솔루션은 아니지만 유일한 해결책 인 것 같습니다.

-1

이 경우 일반적으로 수행하는 작업은 사용자가 다운로드하려는 모든 파일을 선택할 수 있도록 허용하는 것입니다. 그런 다음 파일을 SharpZipLib을 사용하여 하나의 아카이브로 압축하고 그 파일을 반환합니다.

데이터의 크기 또는 압축률에 따라 최대 파일 크기를 제한 할 수 있습니다.

관련 문제