unity3d 压缩文件夹和压缩文件

本文介绍如何在Unity3D中利用Ionic.Zip库实现文件夹的压缩功能,包括所需DLL的安装步骤、脚本编写及中文路径的支持等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直接开始,不扯淡

1:下载名字为《   Ionic.zip    》的压缩包,将里面的《    Ionic.Zip.dll    》放到unity3d的Plugins文件夹下。如果没有此文件夹,自己创建

2:脚本操作

using UnityEngine;
using System.Collections;
using Ionic.Zip;


public class YaSuo : MonoBehaviour {
    //路径
    string WenJianJiaPath;  //文件夹
    //string FilePath;      //文件


// Use this for initialization
void Start () {
        //设置文件夹的路径
        WenJianJiaPath = Application.dataPath + "/Sound";
        //文件路径
        //FilePath = Application.dataPath + "/Sound/New Material.mat";
        //压缩包的名字
        string FileName = "XiaoBaiYaSouFile";
        //输出
        print(FileName);
        //开始压缩
        using(ZipFile zip = new ZipFile(Application.dataPath + "/" + FileName + ".zip")){
            //设置密码
            zip.Password = "000";
            //压缩文件夹
            zip.AddDirectory(WenJianJiaPath, "Sound");
            //压缩文件
            //zip.AddFile(FilePath,"");
            //保存
            zip.Save();


            //其他方法提示
            //删除文件
            //zip.RemoveEntry();
            //解压文件
            //zip[text.text].Extract(SoundPath);
        }
}

}

 3:此脚本随便拖到一个物体上。

4:创建一个Sound的文件夹,因为脚本上面我填写的就是Sound文件夹。zip.AddDirectory(WenJianJiaPath, "Sound");

5:运行程序。



温馨提示:

如果有中文路径,请将  using(ZipFile zip = new ZipFile(Application.dataPath + "/" + FileName + ".zip")) 改成 using (ZipFile zip = new ZipFile(System.Text.Encoding.Default))

然后将  zip.Save(); 改成  zip.Save(Application.dataPath + "/" + FileName + ".zip"); 

这样就完美的解决了发布以后中文文件夹名字变成乱码的情况啦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值