在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
项目的配置文件为了和服务器保持一致,每次打包时都从网上下载配置文件,由于下载的是zip压缩包,还需要解压,代码如下: using ICSharpCode.SharpZipLib.Zip; using System; using System.IO; using System.Net; public class CsvFilesDownloader { const string RootUrl = "http://xxx-"; // csv 文件下载地址 const string CSVDirAssetPath = "Assets/CSVConvertScripts/CSVFiles"; // csv 文件保存目录 #region Version public enum Version { Trunk, CBT3, CBT2, CBT1, TT, Daye, M4, M3, M2, } #endregion public static void Start(Version version) { string url = RootUrl + version; var request = (HttpWebRequest)WebRequest.Create(url); request.Method = WebRequestMethods.Http.Post; var response = request.GetResponse(); var stream = response.GetResponseStream(); string saveDirPath = AssetBundleItem.GetFullPath(CSVDirAssetPath); Decompress(stream, saveDirPath); } // 需使用开源类库:ICSharpCode.SharpZipLib,可以网上下载 static void Decompress(Stream src, string targetDirPath) { if (src == null) throw new ArgumentNullException("src"); if (string.IsNullOrEmpty(targetDirPath)) throw new ArgumentException("targetDirPath"); if (!Directory.Exists(targetDirPath)) Directory.CreateDirectory(targetDirPath); using (ZipInputStream decompressor = new ZipInputStream(src)) { ZipEntry entry; while ((entry = decompressor.GetNextEntry()) != null) { if (entry.IsDirectory) continue; if (Path.GetExtension(entry.Name).ToLower() != ".csv") continue; string fileName = Path.GetFileName(entry.Name); string path = Path.Combine(targetDirPath, fileName); byte[] data = new byte[2048]; using (FileStream streamWriter = File.Create(path)) { int bytesRead; while ((bytesRead = decompressor.Read(data, 0, data.Length)) > 0) streamWriter.Write(data, 0, bytesRead); } } } } }
转载请注明出处:http://www.cnblogs.com/jietian331/p/5019492.html |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论