Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

ZipPackage classe

 

Date de publication : novembre 2016

Implémente une sous-classe dérivée du résumé Package classe de base : la ZipPackage classe utilise une archive ZIP comme magasin de conteneur. Cette classe ne peut pas être héritée.

Espace de noms:   System.IO.Packaging
Assembly:  WindowsBase (dans WindowsBase.dll)

System.Object
  System.IO.Packaging.Package
    System.IO.Packaging.ZipPackage

public sealed class ZipPackage : Package

NomDescription
System_CAPS_pubpropertyFileOpenAccess

Obtient l’accès au fichier des paramètres pour le package.(Hérité de Package.)

System_CAPS_pubpropertyPackageProperties

Obtient les propriétés principales du package.(Hérité de Package.)

NomDescription
System_CAPS_pubmethodClose()

Enregistre et ferme le package ainsi que tous les flux sous-jacent des composants.(Hérité de Package.)

System_CAPS_pubmethodCreatePart(Uri, String)

Crée un nouveau composant non compressé avec un URI donné et le type de contenu.(Hérité de Package.)

System_CAPS_pubmethodCreatePart(Uri, String, CompressionOption)

Crée une nouvelle partie avec un URI donné, le type de contenu et l’option de compression.(Hérité de Package.)

System_CAPS_pubmethodCreateRelationship(Uri, TargetMode, String)

Crée une relation au niveau du package pour une partie avec un URI donné, mode cible et type de relation.(Hérité de Package.)

System_CAPS_pubmethodCreateRelationship(Uri, TargetMode, String, String)

Crée une relation au niveau du package pour une partie avec un URI donné, mode cible, le type de relation et identificateur (ID).(Hérité de Package.)

System_CAPS_pubmethodDeletePart(Uri)

Supprime un composant avec un URI donné à partir du package.(Hérité de Package.)

System_CAPS_pubmethodDeleteRelationship(String)

Supprime une relation au niveau du package.(Hérité de Package.)

System_CAPS_pubmethodEquals(Object)

Détermine si l'objet spécifié est identique à l'objet actuel.(Hérité de Object.)

System_CAPS_pubmethodFlush()

Enregistre le contenu de toutes les parties et relations contenues dans le package.(Hérité de Package.)

System_CAPS_pubmethodGetHashCode()

Fait office de fonction de hachage par défaut.(Hérité de Object.)

System_CAPS_pubmethodGetPart(Uri)

Retourne la partie avec un URI donné.(Hérité de Package.)

System_CAPS_pubmethodGetParts()

Retourne une collection de toutes les parties dans le package.(Hérité de Package.)

System_CAPS_pubmethodGetRelationship(String)

Retourne la relation au niveau du package avec un identificateur donné.(Hérité de Package.)

System_CAPS_pubmethodGetRelationships()

Retourne une collection de toutes les relations au niveau du package.(Hérité de Package.)

System_CAPS_pubmethodGetRelationshipsByType(String)

Retourne une collection de toutes les relations au niveau du package qui correspondent à une donnée RelationshipType.(Hérité de Package.)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_pubmethodPartExists(Uri)

Indique si un composant avec un URI donné est dans le package.(Hérité de Package.)

System_CAPS_pubmethodRelationshipExists(String)

Indique si une relation au niveau du package avec un ID donné est contenue dans le package.(Hérité de Package.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente l'objet actuel.(Hérité de Object.)

NomDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodIDisposable.Dispose()

Ce membre prend en charge la Windows Presentation Foundation (WPF) infrastructure et n’est pas destinée pour une utilisation de l’application. Utilisez le type-safe Dispose méthode à la place.(Hérité de Package.)

Le Package.Open utilise ZipPackage conteneurs par défaut.

Cet exemple montre comment créer un base ZipPackage.

L’exemple crée un package qui contient une partie de document unique qui est définie en tant qu’élément de racine du package en au niveau du package PackageRelationship.

Le package contient également une partie d’image et un second PackageRelationship qui définit une association entre la partie du document source et la partie d’image cible. (L’image est une ressource qui est utilisée avec le document).

//  -------------------------- CreatePackage --------------------------
/// <summary>
///   Creates a package zip file containing specified
///   content and resource files.</summary>
private static void CreatePackage()
{
    // Convert system path and file names to Part URIs. In this example
    // Uri partUriDocument /* /Content/Document.xml */ =
    //     PackUriHelper.CreatePartUri(
    //         new Uri("Content\Document.xml", UriKind.Relative));
    // Uri partUriResource /* /Resources/Image1.jpg */ =
    //     PackUriHelper.CreatePartUri(
    //         new Uri("Resources\Image1.jpg", UriKind.Relative));
    Uri partUriDocument = PackUriHelper.CreatePartUri(
                              new Uri(documentPath, UriKind.Relative));
    Uri partUriResource = PackUriHelper.CreatePartUri(
                              new Uri(resourcePath, UriKind.Relative));

    // Create the Package
    // (If the package file already exists, FileMode.Create will
    //  automatically delete it first before creating a new one.
    //  The 'using' statement insures that 'package' is
    //  closed and disposed when it goes out of scope.)
    using (Package package =
        Package.Open(packagePath, FileMode.Create))
    {
        // Add the Document part to the Package
        PackagePart packagePartDocument =
            package.CreatePart(partUriDocument,
                           System.Net.Mime.MediaTypeNames.Text.Xml);

        // Copy the data to the Document Part
        using (FileStream fileStream = new FileStream(
               documentPath, FileMode.Open, FileAccess.Read))
        {
            CopyStream(fileStream, packagePartDocument.GetStream());
        }// end:using(fileStream) - Close and dispose fileStream.

        // Add a Package Relationship to the Document Part
        package.CreateRelationship(packagePartDocument.Uri,
                                   TargetMode.Internal,
                                   PackageRelationshipType);

        // Add a Resource Part to the Package
        PackagePart packagePartResource =
            package.CreatePart(partUriResource,
                           System.Net.Mime.MediaTypeNames.Image.Jpeg);

        // Copy the data to the Resource Part
        using (FileStream fileStream = new FileStream(
               resourcePath, FileMode.Open, FileAccess.Read))
        {
            CopyStream(fileStream, packagePartResource.GetStream());
        }// end:using(fileStream) - Close and dispose fileStream.

        // Add Relationship from the Document part to the Resource part
        packagePartDocument.CreateRelationship(
                                new Uri(@"../resources/image1.jpg",
                                UriKind.Relative),
                                TargetMode.Internal,
                                ResourceRelationshipType);

    }// end:using (Package package) - Close and dispose package.

}// end:CreatePackage()


//  --------------------------- CopyStream ---------------------------
/// <summary>
///   Copies data from a source stream to a target stream.</summary>
/// <param name="source">
///   The source stream to copy from.</param>
/// <param name="target">
///   The destination stream to copy to.</param>
private static void CopyStream(Stream source, Stream target)
{
    const int bufSize = 0x1000;
    byte[] buf = new byte[bufSize];
    int bytesRead = 0;
    while ((bytesRead = source.Read(buf, 0, bufSize)) > 0)
        target.Write(buf, 0, bytesRead);
}// end:CopyStream()

Pour obtenir un exemple complet, consultez Writing a Package Sample.

.NET Framework
Disponible depuis 3.0

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: