Jak wyodrębnić pliki RAR za pomocą C#
W tym przewodniku omówimy proces wyodrębniania plików RAR za pomocą C#. Ten samouczek zawiera niezbędne zasoby do skonfigurowania środowiska deweloperskiego, szczegółową listę kroków, które wyjaśniają logikę programowania oraz działający przykładowy kod do dekompresji plików RAR.
Korzyści z wyodrębniania plików RAR
- Kompresja:
- Format RAR zazwyczaj zapewnia lepsze wskaźniki kompresji w porównaniu do ZIP.
- Archiwa wieloczęściowe:
- Pliki RAR obsługują archiwa wieloczęściowe, co pozwala na podział dużych zbiorów danych na mniejsze pliki.
- Informacje o plikach:
- Umożliwia dostęp do różnych szczegółów (rozmiar, data itp.) dotyczących plików w archiwum przed ich wyodrębnieniem.
Wymagania wstępne: Przygotowanie środowiska
- Skonfiguruj Visual Studio lub dowolne kompatybilne IDE .NET.
- Zainstaluj Aspose.ZIP z Menedżera pakietów NuGet.
Przewodnik krok po kroku do wyodrębniania plików RAR
Krok 1: Zainstaluj Aspose.ZIP
Dodaj bibliotekę Aspose.ZIP do swojego projektu.
Install-Package Aspose.ZIP
Krok 2: Załaduj plik RAR
Załaduj źródłowy plik RAR za pomocą klasy RarArchive
.
using (RarArchive rarArchive = new RarArchive("Sample.rar"))
{
// Kroki przetwarzania będą się tutaj odbywać
}
Krok 3: Przeanalizuj wpisy
Przejdź przez wszystkie wpisy w archiwum RAR.
foreach (var entry in rarArchive.Entries)
{
// Dalsze kroki przetwarzania będą się tutaj odbywać
}
Krok 4: Utwórz FileStream
Utwórz FileStream
dla każdego wpisu, aby zapisać wyodrębnione dane.
var file = File.Create(entry.Name);
Krok 5: Odczytaj bajty z wpisu
Odczytaj wszystkie bajty z bieżącego wpisu i zapisz je do FileStream
.
using (var fileEntry = entry.Open())
{
byte[] data = new byte[1024];
int bytesCount;
while ((bytesCount = fileEntry.Read(data, 0, data.Length)) > 0)
{
file.Write(data, 0, bytesCount);
}
}
Krok 6: Zapisz wyodrębniony plik
Upewnij się, że FileStream
jest prawidłowo zapisany i zamknięty.
file.Close();
file.Dispose();
Pełny przykład kodu do wyodrębniania plików RAR
Oto pełny przykład pokazujący, jak wyodrębniać pliki RAR w C#:
// Załaduj plik RAR
using (RarArchive rarArchive = new RarArchive("Sample.rar"))
{
// Przeanalizuj wszystkie wpisy w archiwum
foreach (var entry in rarArchive.Entries)
{
// Utwórz plik dla każdego wpisu
var file = File.Create(entry.Name);
// Otwórz wpis archiwum i zapisz dane do pliku
using (var fileEntry = entry.Open())
{
byte[] data = new byte[1024];
int bytesCount;
while ((bytesCount = fileEntry.Read(data, 0, data.Length)) > 0)
{
file.Write(data, 0, bytesCount);
}
}
// Zamknij strumień pliku po zapisaniu
file.Close();
}
}
Dodatkowe informacje
- Możesz filtrować pliki na podstawie różnych kryteriów, takich jak rozmiar lub data przed ich wyodrębnieniem.
- Biblioteka Aspose.ZIP obsługuje różne formaty archiwów, co umożliwia wszechstronną manipulację plikami.
Podsumowanie
Ten przewodnik pokazał, jak wyodrębniać pliki RAR w C# za pomocą Aspose.ZIP. Postępując zgodnie z opisanymi krokami i przykładem kodu, możesz bezproblemowo włączyć funkcjonalność wyodrębniania RAR do swoich aplikacji. Aby dalej zgłębiać temat, rozważ zapoznanie się z samouczkami na temat kompresji plików lub wyodrębniania innych formatów archiwów.