Class UueArchive

Class UueArchive

Namespace: Aspose.Zip.Uue
Assembly: Aspose.Zip.dll (25.1.0)

此类表示uuencoded文件。

public class UueArchive : IArchive, IDisposable, IArchiveFileEntry

继承

objectUueArchive

实现

IArchive, IDisposable, IArchiveFileEntry

继承成员

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

构造函数

UueArchive()

初始化一个新的Aspose.Zip.Uue.UueArchive类的实例,准备进行编码。

public UueArchive()

示例

以下示例演示如何进行uuencode文件。

using (var archive = new UueArchive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.uue");
}

UueArchive(Stream)

初始化一个新的Aspose.Zip.Uue.UueArchive类的实例,准备进行解码。

public UueArchive(Stream sourceStream)

参数

sourceStream Stream

归档的来源。

示例

从流打开归档并提取到MemoryStream

var ms = new MemoryStream();
using (var archive = new UueArchive(File.OpenRead("archive.001")))
  archive.Open().CopyTo(ms);

备注

此构造函数不解码。有关解压缩的详细信息,请参见Aspose.Zip.Uue.UueArchive.Open方法。

UueArchive(string)

初始化一个新的Aspose.Zip.Uue.UueArchive类的实例。

public UueArchive(string path)

参数

path string

归档文件的路径。

示例

通过路径从文件打开归档并解码到MemoryStream

var ms = new MemoryStream();
using (var archive = new UueArchive("archive.uue"))
  archive.Open().CopyTo(ms);

备注

此构造函数不解压缩。有关解压缩的详细信息,请参见Aspose.Zip.Uue.UueArchive.Open方法。

异常

ArgumentNullException

path 为null。

SecurityException

调用方没有访问所需权限。

ArgumentException

path 为空,仅包含空格或包含无效字符。

UnauthorizedAccessException

访问文件path被拒绝。

PathTooLongException

指定的path、文件名或两者超过系统定义的最大长度。例如,在基于Windows的平台上,路径必须少于248个字符,文件名必须少于260个字符。

NotSupportedException

文件path中间包含冒号(:)。

属性

Name

原始文件的名称。

public string Name { get; }

属性值

string

方法

Dispose()

执行与释放、释放或重置非托管资源相关的应用程序定义任务。

public void Dispose()

Dispose(bool)

执行与释放、释放或重置非托管资源相关的应用程序定义任务。

protected virtual void Dispose(bool disposing)

参数

disposing bool

是否应释放托管资源。

Extract(Stream)

将归档提取到提供的流中。

public void Extract(Stream destination)

参数

destination Stream

目标流。必须可写。

示例

using (var archive = new UueArchive("archive.uue"))
{
     archive.Extract(httpResponseStream);
}

异常

ArgumentException

destination 不支持写入。

Extract(string)

将归档提取到指定路径的文件中。

public FileInfo Extract(string path)

参数

path string

目标文件的路径。如果文件已存在,将被覆盖。

返回

FileInfo

提取文件的信息。

异常

ArgumentNullException

path 为null。

SecurityException

调用方没有访问所需权限。

ArgumentException

path 为空,仅包含空格或包含无效字符。

UnauthorizedAccessException

访问文件path被拒绝。

PathTooLongException

指定的path、文件名或两者超过系统定义的最大长度。例如,在基于Windows的平台上,路径必须少于248个字符,文件名必须少于260个字符。

NotSupportedException

文件path中间包含冒号(:)。

FileNotFoundException

文件未找到。

DirectoryNotFoundException

指定的路径无效,例如在未映射的驱动器上。

IOException

文件已打开。

ExtractToDirectory(string)

将归档内容提取到提供的目录中。

public void ExtractToDirectory(string destinationDirectory)

参数

destinationDirectory string

要放置提取文件的目录路径。

备注

如果目录不存在,将被创建。

异常

ArgumentNullException

destinationDirectory 为null。

PathTooLongException

指定的路径、文件名或两者超过系统定义的最大长度。例如,在基于Windows的平台上,路径必须少于248个字符,文件名必须少于260个字符。

SecurityException

调用方没有访问现有目录的所需权限。

NotSupportedException

如果目录不存在,路径包含不是驱动器标签(“C:")的一部分的冒号字符(:)。

ArgumentException

destinationDirectory 是零长度字符串,仅包含空格或包含一个或多个无效字符。您可以使用System.IO.Path.GetInvalidPathChars方法查询无效字符。 -或- 路径以冒号字符(:)为前缀或仅包含冒号字符。

IOException

指定路径的目录是文件。-或- 网络名称未知。

Open()

打开归档以进行解码,并提供包含归档内容的流。

public Stream Open()

返回

Stream

表示归档内容的流。

示例

用法: Stream decompressed = archive.Open();

.NET 4.0及更高版本 - 使用Stream.CopyTo方法: decompressed.CopyTo(httpResponse.OutputStream)

.NET 3.5及更早版本 - 手动复制字节:

byte[] buffer = new byte[8192];
int bytesRead;
while (0 < (bytesRead = decompressed.Read(buffer, 0, buffer.Length)))
 fileStream.Write(buffer, 0, bytesRead);
```</p>

#### 备注

从流中读取以获取文件的原始内容。请参见示例部分。

### <a id="Aspose_Zip_Uue_UueArchive_Save_System_IO_Stream_Aspose_Zip_Uue_UueSaveOptions_"></a> Save\(Stream, UueSaveOptions\)

将归档保存到提供的流中。

```csharp
public void Save(Stream outputStream, UueSaveOptions saveOptions = null)

参数

outputStream Stream

目标流。

saveOptions UueSaveOptions

归档保存的选项。

示例

将压缩数据写入http响应流。

using (var archive = new UueArchive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save(httpResponse.OutputStream);
}

备注

outputStream 必须可写。

异常

InvalidOperationException

要归档的数据源尚未提供。

ArgumentException

outputStream 不是可写的。

UnauthorizedAccessException

文件源为只读或是目录。

DirectoryNotFoundException

指定的文件源路径无效,例如在未映射的驱动器上。

IOException

文件源已打开。

Save(string, UueSaveOptions)

将归档保存到提供的目标文件中。

public void Save(string destinationFileName, UueSaveOptions saveOptions = null)

参数

destinationFileName string

要创建的归档的路径。如果指定的文件名指向现有文件,将被覆盖。

saveOptions UueSaveOptions

归档保存的选项。

示例

将编码数据写入文件。

using (var archive = new UueArchive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("data.uue");
}

异常

ArgumentNullException

destinationFileName 为null。

SecurityException

调用方没有访问所需权限。

ArgumentException

destinationFileName 为空,仅包含空格或包含无效字符。

UnauthorizedAccessException

访问文件destinationFileName被拒绝。

PathTooLongException

指定的destinationFileName、文件名或两者超过系统定义的最大长度。例如,在基于Windows的平台上,路径必须少于248个字符,文件名必须少于260个字符。

NotSupportedException

文件destinationFileName中间包含冒号(:)。

SetSource(Stream)

设置要在归档中编码的内容。

public void SetSource(Stream source)

参数

source Stream

归档的输入流。

示例

using (var archive = new UueArchive()) 
{
    archive.SetSource(new MemoryStream(new byte[] { 0x00, 0xFF }));
    archive.Save("archive.uue");
}

SetSource(FileInfo)

设置要在归档中压缩的内容。

public void SetSource(FileInfo fileInfo)

参数

fileInfo FileInfo

要压缩的文件的引用。

示例

using (var archive = new UueArchive()) 
{
    archive.SetSource(new FileInfo("data.bin"));
    archive.Save("archive.uue");
}

SetSource(string)

设置要在归档中编码的内容。

public void SetSource(string path)

参数

path string

要编码的文件的路径。

示例

using (var archive = new UueArchive()) 
{
    archive.SetSource("data.bin");
    archive.Save("archive.uue");
}

异常

ArgumentNullException

path 为null。

SecurityException

调用方没有访问所需权限。

ArgumentException

path 为空,仅包含空格或包含无效字符。

UnauthorizedAccessException

访问文件path被拒绝。

PathTooLongException

指定的path、文件名或两者超过系统定义的最大长度。例如,在基于Windows的平台上,路径必须少于248个字符,文件名必须少于260个字符。

NotSupportedException

文件path中间包含冒号(:)。

 中文