当前位置: 首页 > news >正文

基金管理公司司网站建设要求风铃做的网站能否推广

基金管理公司司网站建设要求,风铃做的网站能否推广,信息平台网站模板,丽水公司网站建设全代码实现#xff0c;如有帮助#xff0c;欢迎留下足迹。 目录 压缩 核心处理 解压缩 压缩 入口压缩函数 useBasePathInZip参数#xff1a; 为 false 相当于全文件视图#xff0c;zip中没有目录 为 true表示保留源文件的路径#xff08;srcPaths如果是相对路径#… 全代码实现如有帮助欢迎留下足迹。 目录 压缩 核心处理 解压缩 压缩 入口压缩函数 useBasePathInZip参数 为 false 相当于全文件视图zip中没有目录 为 true表示保留源文件的路径srcPaths如果是相对路径则压缩后zip文件中也是相对路径 func compress(srcPaths []string, outputPath string, useBasePathInZip bool) {if len(srcPaths) 0 {return}file, openErr : os.OpenFile(outputPath, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0644)if openErr ! nil {fmt.Printf(failed to open file %s: %v\n, outputPath, openErr)return}defer file.Close()zipWriter : zip.NewWriter(file)defer zipWriter.Close()for _, path : range srcPaths {info, err : os.Stat(path)if err ! nil {fmt.Printf(failed to stat file %s: %v\n, path, err)return}if info.IsDir() {fmt.Printf(%s is dir...\n, path)err addFilesToDirectory(zipWriter, path, , useBasePathInZip)if err ! nil {return}continue}fmt.Printf(%s is file...\n, path)if err compressFile(zipWriter, path, useBasePathInZip); err ! nil {log.Fatalf(add file %s to zip failed: %s, path, err)}} } 核心处理 递归压缩目录中的所有文件 func addFilesToDirectory(zw *zip.Writer, newDir, baseInZip string, useBasePathInZip bool) error {files, err : ioutil.ReadDir(newDir)if err ! nil {return err}fmt.Printf(目录 %s 下包含 %d 个对象.\n, newDir, len(files))var newBaseInZip stringfor _, fileInfo : range files {if useBasePathInZip {newBaseInZip filepath.Join(baseInZip, fileInfo.Name())}newFullPath : filepath.Join(newDir, fileInfo.Name())fmt.Printf(\tcheck filename%s, newFullPath%s, newBaseInZip%s \n, fileInfo.Name(), newFullPath, newBaseInZip)// 是目录递归处理if fileInfo.IsDir() {if err addFilesToDirectory(zw, newFullPath, newBaseInZip, useBasePathInZip); err ! nil {return err}continue}// 处理单个文件if err compressFile(zw, newFullPath, useBasePathInZip); err ! nil {return err}}return nil } 压缩单个文件 func compressFile(zw *zip.Writer, srcFile string, useBasePathInZip bool) error {fileToZip, err : os.Open(srcFile)if err ! nil {log.Fatalf(compressFile failed to open %s: %v, srcFile, err)return err}defer fileToZip.Close()var zipFile io.Writerif !useBasePathInZip {// 获得源文件FileInfo对象info, err : fileToZip.Stat()if err ! nil {fmt.Printf(failed to open file %s: %v\n, srcFile, err)return err}// 创建新的ZIP文件头并设置其内部路径仅为文件名header, err : zip.FileInfoHeader(info)if err ! nil {fmt.Printf(failed to create file header for %s: %v\n, srcFile, err)return err}fmt.Println(名称, header.Name)// 设置压缩后的文件名为源文件名去掉路径header.Name filepath.Base(srcFile)// 基于主zw流创建该文件的目标zip平台zipFile, err zw.CreateHeader(header)if err ! nil {return err}} else {zipFile, err zw.Create(srcFile)if err ! nil {return err}}// 将源文件Copy到目标zip平台_, err io.Copy(zipFile, fileToZip)fmt.Printf(压缩 %s 完成 %v\n, srcFile, err)return err } 调用压缩 func main() {var srcPaths []string{fzip/zipt/a.txt, fzip/unzip.go}compress(srcPaths, ./a.zip, true) } 解压缩 func unzip(unzipFile, unzipDir string) {zipReader, _ : zip.OpenReader(unzipFile)for i, file : range zipReader.Reader.File {fmt.Printf(正在压缩第 %d 个. name%s Comment%s, isDir%v, size%d.\n, i1, file.Name, file.Comment, file.FileInfo().IsDir(), file.FileInfo().Size())func(i int, file *zip.File) {zippedFile, err : file.Open()if err ! nil {log.Fatal(err)}defer zippedFile.Close()extractedFilePath : filepath.Join(unzipDir, file.Name)if file.FileInfo().IsDir() {_ os.MkdirAll(extractedFilePath, file.Mode()) // 权限不变fmt.Println(dir Created:, extractedFilePath)return}fmt.Println(file extracted: , file.Name)func() {outputFile, err : os.OpenFile(extractedFilePath, os.O_WRONLY|os.O_CREATE|os.O_TRUNC, file.Mode())if err ! nil {log.Fatal(err)}defer outputFile.Close()_, err io.Copy(outputFile, zippedFile)if err ! nil {log.Fatal(err)}}()}(i, file)} }
http://www.zqtcl.cn/news/53780/

相关文章:

  • 烟台网站制作公司哪家好中国网站为什么要备案
  • 宁波市住房和城乡建设培训中心网站企业微信第三方应用开发
  • 鞍山SEO网站推广公司家装设计师用什么软件画图
  • 做网站开专票税钱是多少个点做户外运动的网站
  • 做影视网站需要的软件观澜网站建设公司
  • 做网站不推广有效果吗win8式网站后台模板
  • 网站 内容建设需要进一步加强wordpress粒子插件
  • 建设网站的新闻wordpress弹窗广告插件
  • 网讯wx1860短视频关键词seo优化
  • 南宁 网站建设wordpress自定义背景
  • 济南品牌网站制作方案专业做英文网站
  • 个人域名用来做淘宝客网站软文营销的经典案例
  • 公司网站模板免费下载磁力屋 最好用
  • 网站推广策划包含哪些内容建网站保定
  • 保定信息平台网站建设北京seo招聘网
  • 网站服务器自己做100平米全包装修价格
  • 微信推送怎么做购物网站电商网站平台建设方案
  • 珠海企业建站模板WordPress获取主题慢
  • 邹城市建设银行网站网站 营销方案
  • 盐城高端网站建设清新织梦淘宝客模板淘客网站程序源码
  • 宁波网站建设推广想注册自己的品牌怎么注册
  • 网站商城与网站区别吗南京银城建设 网站
  • 网站建设什么牌子好ace wordpress
  • 石狮app网站开发哪家好软件项目管理方案
  • 深圳市国外网站建设邢台商城类网站建设
  • 江苏建站服务网站开发技术项目说明书
  • 做网站坂田重庆长寿网站设计公司哪家好
  • wordpress 爆路径商城网站优化方案
  • 网页设计报价单模板网站优化 图片
  • 经典网站欣赏常用的搜索引擎有