Class SharArchive
Namespace: Aspose.Zip.Shar
Assembly: Aspose.Zip.dll (25.1.0)
این کلاس نمایانگر فایل آرشیو shar است.
public class SharArchive : IDisposable
وراثت
پیادهسازیها
اعضای وراثتیافته
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
سازندهها
SharArchive()
یک نمونه جدید از کلاس Aspose.Zip.Shar.SharArchive را مقداردهی اولیه میکند.
public SharArchive()
مثالها
مثال زیر نشان میدهد که چگونه یک فایل را فشرده کنیم.
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
SharArchive(string)
یک نمونه جدید از کلاس Aspose.Zip.Shar.SharArchive را برای استخراج مقداردهی اولیه میکند.
public SharArchive(string path)
پارامترها
path
string
مسیر به منبع آرشیو.
استثناها
path
نال است.
فراخوانیکننده مجوز لازم برای دسترسی را ندارد.
path
خالی است، فقط شامل فضاهای خالی است، یا شامل کاراکترهای نامعتبر است.
دسترسی به فایل path
رد شده است.
path
، نام فایل، یا هر دو از حداکثر طول تعریفشده توسط سیستم بیشتر است. به عنوان مثال، در پلتفرمهای مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایلها باید کمتر از 260 کاراکتر باشد.
فایل در path
شامل دو نقطه (:) در وسط رشته است.
فایل پیدا نشد.
مسیر مشخصشده نامعتبر است، مانند اینکه در یک درایو نامشخص باشد.
فایل قبلاً باز است.
ویژگیها
Entries
ورودیهای نوع Aspose.Zip.Shar.SharEntry که آرشیو را تشکیل میدهند، دریافت میکند.
public ReadOnlyCollection<sharentry> Entries { get; }
مقدار ویژگی
ReadOnlyCollection<SharEntry>
متدها
CreateEntries(string, bool)
تمام فایلها و دایرکتوریها را به صورت بازگشتی در دایرکتوری دادهشده به آرشیو اضافه میکند.
public SharArchive CreateEntries(string sourceDirectory, bool includeRootDirectory = true)
پارامترها
sourceDirectory
string
دایرکتوری برای فشردهسازی.
includeRootDirectory
bool
نشان میدهد که آیا دایرکتوری ریشه خود را شامل شود یا خیر.
بازگشت
نمونه ورودی Shar.
مثالها
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries("C:\folder", false);
archive.Save(sharFile);
}
}
استثناها
sourceDirectory
نال است.
فراخوانیکننده مجوز لازم برای دسترسی به sourceDirectory
را ندارد.
sourceDirectory
شامل کاراکترهای نامعتبر مانند “, <, >, یا | است.
path
، نام فایل، یا هر دو از حداکثر طول تعریفشده توسط سیستم بیشتر است. به عنوان مثال، در پلتفرمهای مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایلها باید کمتر از 260 کاراکتر باشد. مسیر مشخصشده، نام فایل، یا هر دو خیلی طولانی هستند.
sourceDirectory
نمایانگر یک فایل است، نه یک دایرکتوری.
CreateEntries(DirectoryInfo, bool)
تمام فایلها و دایرکتوریها را به صورت بازگشتی در دایرکتوری دادهشده به آرشیو اضافه میکند.
public SharArchive CreateEntries(DirectoryInfo directory, bool includeRootDirectory = true)
پارامترها
directory
DirectoryInfo
دایرکتوری برای فشردهسازی.
includeRootDirectory
bool
نشان میدهد که آیا دایرکتوری ریشه خود را شامل شود یا خیر.
بازگشت
نمونه ورودی Shar.
مثالها
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntries(new DirectoryInfo("C:\folder"), false);
archive.Save(sharFile);
}
}
استثناها
directory
نال است.
فراخوانیکننده مجوز لازم برای دسترسی به directory
را ندارد.
directory
نمایانگر یک فایل است، نه یک دایرکتوری.
CreateEntry(string, FileInfo, bool)
یک ورودی واحد درون آرشیو ایجاد میکند.
public SharEntry CreateEntry(string name, FileInfo fileInfo, bool openImmediately = false)
پارامترها
name
string
نام ورودی.
fileInfo
FileInfo
متاداده فایل یا پوشهای که باید فشرده شود.
openImmediately
bool
اگر بلافاصله فایل را باز کند، درست است، در غیر این صورت فایل هنگام ذخیره آرشیو باز میشود.
بازگشت
نمونه ورودی Shar.
مثالها
FileInfo fileInfo = new FileInfo("data.bin");
using (var archive = new SharArchive())
{
archive.CreateEntry("test.bin", fileInfo);
archive.Save("archive.shar");
}
توضیحات
اگر فایل بلافاصله با پارامتر openImmediately
باز شود، تا زمانی که آرشیو از بین برود، مسدود میشود.
استثناها
name
نال است.
name
خالی است.
fileInfo
نال است.
CreateEntry(string, string, bool)
یک ورودی واحد درون آرشیو ایجاد میکند.
public SharEntry CreateEntry(string name, string sourcePath, bool openImmediately = false)
پارامترها
name
string
نام ورودی.
sourcePath
string
مسیر به فایلی که باید فشرده شود.
openImmediately
bool
اگر بلافاصله فایل را باز کند، درست است، در غیر این صورت فایل هنگام ذخیره آرشیو باز میشود.
بازگشت
نمونه ورودی Shar.
مثالها
using (var archive = new SharArchive())
{
archive.CreateEntry("first.bin", "data.bin");
archive.Save("archive.shar");
}
توضیحات
نام ورودی فقط در پارامتر name
تنظیم میشود. نام فایلی که در پارامتر sourcePath
ارائه شده است، بر نام ورودی تأثیر نمیگذارد.
اگر فایل بلافاصله با پارامتر openImmediately
باز شود، تا زمانی که آرشیو از بین برود، مسدود میشود.
استثناها
sourcePath
نال است.
فراخوانیکننده مجوز لازم برای دسترسی را ندارد.
sourcePath
خالی است، فقط شامل فضاهای خالی است، یا شامل کاراکترهای نامعتبر است. - یا - نام فایل، به عنوان بخشی از name
، از 100 علامت بیشتر است.
دسترسی به فایل sourcePath
رد شده است.
sourcePath
، نام فایل، یا هر دو از حداکثر طول تعریفشده توسط سیستم بیشتر است. به عنوان مثال، در پلتفرمهای مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایلها باید کمتر از 260 کاراکتر باشد. - یا - name
برای shar خیلی طولانی است.
فایل در sourcePath
شامل دو نقطه (:) در وسط رشته است.
CreateEntry(string, Stream)
یک ورودی واحد درون آرشیو ایجاد میکند.
public SharEntry CreateEntry(string name, Stream source)
پارامترها
name
string
نام ورودی.
source
Stream
جریان ورودی برای ورودی.
بازگشت
نمونه ورودی Shar.
مثالها
using (var archive = new SharArchive())
{
archive.CreateEntry("data.bin", File.OpenRead("data.bin"));
archive.Save("archive.shar");
}
استثناها
name
نال است.
source
نال است.
name
خالی است.
DeleteEntry(SharEntry)
اولین وقوع یک ورودی خاص را از لیست ورودیها حذف میکند.
public SharArchive DeleteEntry(SharEntry entry)
پارامترها
entry
SharEntry
ورودی که باید از لیست ورودیها حذف شود.
بازگشت
نمونه ورودی Shar.
مثالها
در اینجا نحوهی حذف تمام ورودیها به جز آخرین ورودی نشان داده شده است:
using (var archive = new SharArchive("archive.shar"))
{
while (archive.Entries.Count > 1)
archive.DeleteEntry(archive.Entries[0]);
archive.Save(outputSharFile);
}
استثناها
entry
نال است.
DeleteEntry(int)
ورودی را از لیست ورودیها بر اساس ایندکس حذف میکند.
public SharArchive DeleteEntry(int entryIndex)
پارامترها
entryIndex
int
ایندکس صفر-مبنا از ورودی که باید حذف شود.
بازگشت
آرشیو با ورودی حذفشده.
مثالها
using (var archive = new SharArchive("two_files.shar"))
{
archive.DeleteEntry(0);
archive.Save("single_file.shar");
}
استثناها
entryIndex
کمتر از 0 است. - یا - entryIndex
برابر یا بیشتر از تعداد Entries
است.
Dispose(bool)
وظایف تعریفشده توسط برنامه را که با آزادسازی، رهاسازی، یا بازنشانی منابع غیرمدیریتی مرتبط است، انجام میدهد.
protected virtual void Dispose(bool disposing)
پارامترها
disposing
bool
آیا منابع مدیریتشده باید آزاد شوند یا خیر.
Dispose()
وظایف تعریفشده توسط برنامه را که با آزادسازی، رهاسازی، یا بازنشانی منابع غیرمدیریتی مرتبط است، انجام میدهد.
public void Dispose()
Save(string)
آرشیو را به فایل مقصد ارائهشده ذخیره میکند.
public void Save(string destinationFileName)
پارامترها
destinationFileName
string
مسیر آرشیو که باید ایجاد شود. اگر نام فایل مشخصشده به یک فایل موجود اشاره کند، بر روی آن نوشته خواهد شد.
مثالها
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save("archive.shar");
}
توضیحات
ذخیره یک آرشیو به همان مسیری که از آن بارگذاری شده است، ممکن است. با این حال، این کار توصیه نمیشود زیرا این روش از کپی به فایل موقت استفاده میکند.
استثناها
destinationFileName
یک رشته با طول صفر است، فقط شامل فضاهای خالی است، یا شامل یک یا چند کاراکتر نامعتبر است که توسط System.IO.Path.InvalidPathChars تعریف شدهاند.
destinationFileName
نال است.
destinationFileName
، نام فایل، یا هر دو از حداکثر طول تعریفشده توسط سیستم بیشتر است. به عنوان مثال، در پلتفرمهای مبتنی بر ویندوز، مسیرها باید کمتر از 248 کاراکتر و نام فایلها باید کمتر از 260 کاراکتر باشد.
destinationFileName
نامعتبر است، (به عنوان مثال، در یک درایو نامشخص است).
یک خطای I/O هنگام باز کردن فایل رخ داده است.
destinationFileName
به فایلی اشاره میکند که فقط خواندنی است و دسترسی به آن مجاز نیست. - یا - مسیری که به یک دایرکتوری اشاره میکند. - یا - فراخوانیکننده مجوز لازم را ندارد.
destinationFileName
در یک فرمت نامعتبر است.
فایل پیدا نشد.
Save(Stream)
آرشیو را به جریانی که ارائه شده است ذخیره میکند.
public void Save(Stream output)
پارامترها
output
Stream
جریان مقصد.
مثالها
using (FileStream sharFile = File.Open("archive.shar", FileMode.Create))
{
using (var archive = new SharArchive())
{
archive.CreateEntry("entry1", "data.bin");
archive.Save(sharFile);
}
}
توضیحات
output
باید قابل نوشتن باشد.
استثناها
output
نال است.
output
قابل نوشتن نیست. - یا - output
همان جریانی است که از آن استخراج میکنیم.