Beispiel #1
0
 public static void EncryptFile(System.IO.FileInfo src, DirectoryInfo des)
 {
     try
     {
         if (File.Exists(src.FullName))
         {
             byte[] srcbyte = File.ReadAllBytes(src.FullName);
             byte[] retbyte;
             if (IsEncryptBatch)
             {
                 retbyte = ConfigEncrypt.Encrypt(srcbyte);
             }
             else
             {
                 retbyte = ConfigEncrypt.Decrypt(srcbyte);
             }
             string despath = des.FullName + "//" + src.Name;
             File.WriteAllBytes(despath, retbyte);
         }
     }
     catch (Exception e)
     {
         UnityEngine.Debug.LogError("加密文件出错" + e.Message);
     }
 }
Beispiel #2
0
        public static void HandleConfigBundle()
        {
            string tempLuaDir = ConfigConst.tempconfigDir;

            if (Directory.Exists(tempLuaDir))
            {
                Directory.Delete(ConfigConst.tempconfigDir);
            }
            Directory.CreateDirectory(tempLuaDir);
            string sourceDir = ConfigConst.configDir;

            string[] files = Directory.GetFiles(sourceDir, "*", SearchOption.AllDirectories);
            int      len   = sourceDir.Length;

            if (sourceDir[len - 1] == '/' || sourceDir[len - 1] == '\\')
            {
                --len;
            }
            for (int j = 0; j < files.Length; j++)
            {
                if (files[j].Contains("DS_Store"))
                {
                    continue;
                }
                if (files[j].Contains("meta"))
                {
                    continue;
                }
                string str  = files[j].Remove(0, len);
                string dest = tempLuaDir + str;
                string dir  = Path.GetDirectoryName(dest);
                Directory.CreateDirectory(dir);
                byte[] srcbyte = System.Text.Encoding.UTF8.GetBytes(File.ReadAllText(files[j]));
                byte[] enbyte  = ConfigEncrypt.Encrypt(srcbyte);
                File.WriteAllBytes(dest, enbyte);
            }
            AssetDatabase.Refresh();
        }