내 응용 프로그램에서는 사용자가 드라이브에서 큰 파일 (> 100MB)을 선택합니다. 나는 그 프로그램이 선택한 파일을 가져 가고 을 100MB 이하의 보관 된 부품으로 잘라내기를 바란다. 어떻게 할 수 있습니까? 어떤 라이브러리 및 형식을 사용해야합니까? 몇 가지 샘플 코드를 제공해 주시겠습니까? 첫 번째 100MB 아카이브 된 부분이 만들어지면 서버에 업로드 한 다음 다음 100MB 부분을 업로드하고 업로드가 완료 될 때까지 계속합니다. 그런 다음 다른 컴퓨터에서 보관 된 부품을 모두 다운로드 한 다음 원본 파일에 연결하고 싶습니다. 예를 들어, 7zip 라이브러리를 사용하여이 작업을 수행 할 수 있습니까? 감사!C# : 파일을 100MB 단위로 보관
는 UPDATE : 첫 번째 대답에서, 나는 내가 SevenZipSharp를 사용하는 것 같네요, 그리고 내가 1백메가바이트 보관 부분으로 파일을 분할하는 방법을 이제 이해 생각하지만, 난 여전히 두 가지 질문이 있습니다
-
을
- 다음 100MB 부분을 생성하기 전에 처음 100MB의 아카이브 된 부분을 생성하고 업로드 할 수 있습니까?
- 분할 된 여러 개의 아카이브에서 SevenZipSharp로 파일을 추출하는 방법은 무엇입니까?
업데이트 # 2 : 난 그냥 7 우편 GUI로 주위를 연주 및 멀티 볼륨/분할 아카이브를 생성, 나는 그것에서 첫 번째를 선택하고 추출하는 것은에서 전체 파일을 추출합니다 것을 알 수 있었다 모든 분할 아카이브. 이것은 이후 부분에 대한 경로가 첫 번째 경로에 포함되어 있다고 (또는 연속적입니까?) 믿게합니다. 그러나 이것이 콘솔에서 직접 작동하는지 확신 할 수는 없지만 지금 시도하고 첫 번째 업데이트에서 질문 # 2를 해결하는지 확인합니다.
다른 컴퓨터에 다운로드 된 분할 아카이브를 다시 연결하는 경우는 어떻게됩니까? –
또한 첫 번째 부분을 만들기 전에 첫 번째 100MB 부분을 만든 다음 두 번째 부분을 만들기 전에 업로드 한 다음 다음 부분을 만들고 업로드하는 등의 작업을 수행 할 수 있습니까? –
@Maxim Z - 다시 연결하려면 7zip lib를 사용하여 첫 번째 압축을 푸십시오. 7zip은 전체 압축이 완료 될 때까지 분할 할 때/모든 부분을 수정할 수 있기 때문에 첫 번째 부분을 만들 수 없으며 다음 부분을 만들기 전에 업로드 할 수 없습니다. 문제가있는 경우 SharpZipLib 및 .zip 압축을 사용해 볼 수 있습니다. –