0

我想知道是否可以 gzip 一个 powerpoint 文件。我问这个问题的原因是因为我发现的所有文章都在压缩 .txt 并且想知道是否可以通过使用 c# 压缩 .pptx .. 下面的代码是我的我正在使用

static void Main()
    {
    try
    {
        string anyString = File.ReadAllText("presentation.pptx");

        CompressStringToFile("new.gz", anyString);
    }
    catch
    {
        // Couldn't compress.
    }
    }

    public static void CompressStringToFile(string fileName, string value)
    {
    // A.
    // Write string to temporary file.
    string temp = Path.GetTempFileName();
    File.WriteAllText(temp, value);

    // B.
    // Read file into byte array buffer.
    byte[] b;
    using (FileStream f = new FileStream(temp, FileMode.Open))
    {
        b = new byte[f.Length];
        f.Read(b, 0, (int)f.Length);
    }


    using (FileStream f2 = new FileStream(fileName, FileMode.Create))
    using (GZipStream gz = new GZipStream(f2, CompressionMode.Compress, false))
    {
        gz.Write(b, 0, b.Length);
    }
    }
4

1 回答 1

2

.pptx 文件(也是 .docx 和 .xlsx)已压缩。如果您将文件扩展名更改为 .zip 并打开文件,您将看到内容。

因此,虽然您应该能够 gzip 其中一个文件,但您不太可能看到大量的进一步压缩。

于 2013-01-24T11:55:55.070 回答