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

有哪些网站做的好处在环评备案网站上做登记后会怎么样

有哪些网站做的好处,在环评备案网站上做登记后会怎么样,做国外市场哪个网站好,企业网站搜索优化外包本文将介绍一个使用Go语言编写的脚本,其主要功能是解析XML文件并基于解析结果重命名文件夹。这个脚本适用于需要对文件夹进行批量重命名,并且重命名规则依赖于XML文件内容的情况。 脚本功能概述 Steam创意工坊下载的Mod文件夹批量重命名为id名称 运行前…

 本文将介绍一个使用Go语言编写的脚本,其主要功能是解析XML文件并基于解析结果重命名文件夹。这个脚本适用于需要对文件夹进行批量重命名,并且重命名规则依赖于XML文件内容的情况。

脚本功能概述

 Steam创意工坊下载的Mod文件夹批量重命名为id+名称
运行前
在这里插入图片描述
运行后
在这里插入图片描述

步骤

  1. 获取当前工作目录:脚本首先获取当前的工作目录,以便后续操作基于此目录进行。
  2. 读取目录内容:接着,脚本读取并遍历当前目录下的所有文件和文件夹。
  3. 查找并解析XML文件:对于每个子文件夹,脚本检查是否存在About/About.xml文件。如果存在,脚本将读取并解析此XML文件。
  4. 读取PublishedFileId.txt:脚本还会读取About/PublishedFileId.txt文件的内容。
  5. 重命名文件夹:最后,脚本使用从XML和PublishedFileId.txt文件中获取的信息来重命名子文件夹。

代码解析

导入必要的包

import ("encoding/xml""fmt""io/ioutil""os""path/filepath"
)

这些包分别用于XML解析、格式化输出、文件读取、操作系统操作和路径操作。

定义ModMetaData结构体

type ModMetaData struct {Name string `xml:"name"`
}

此结构体用于解析XML文件中的<name>标签。

main函数

func main() {// ... 省略了部分代码
}

主函数是脚本的入口点。

获取当前工作目录

currentDir, err := os.Getwd()
if err != nil {fmt.Println("获取当前工作目录失败:", err)return
}

这里,脚本尝试获取当前的工作目录。如果失败,脚本将打印错误信息并退出。

读取目录内容

files, err := os.ReadDir(currentDir)
if err != nil {fmt.Println("读取目录内容出错:", err)return
}

脚本读取并存储当前目录下的所有文件和文件夹。

遍历目录内容

for _, file := range files {if file.IsDir() {// ... 省略了部分代码}
}

对于每个子文件夹,脚本执行以下操作。

解析XML和重命名文件夹

 这部分代码涉及读取XML文件、解析XML内容、读取PublishedFileId.txt文件以及重命名文件夹。这些操作基于前面的步骤获取的路径和文件名。

完整代码

go.mod

module steamModRenamergo 1.22

main.go

package mainimport ("encoding/xml""fmt""io/ioutil""os""path/filepath"
)// ModMetaData 结构体用于解析XML
type ModMetaData struct {Name string `xml:"name"`
}func main() {// 获取当前工作目录currentDir, err := os.Getwd()if err != nil {fmt.Println("获取当前工作目录失败:", err)return}// 读取目录内容files, err := os.ReadDir(currentDir)if err != nil {fmt.Println("读取目录内容出错:", err)return}// 遍历目录内容,打印出所有子文件夹for _, file := range files {if file.IsDir() {// 构建About.xml的路径path := filepath.Join(currentDir, file.Name())aboutXMLPath := filepath.Join(path, "About", "About.xml")// 检查About.xml文件是否存在if _, err := os.Stat(aboutXMLPath); err == nil {// 读取About.xml文件内容xmlData, err := ioutil.ReadFile(aboutXMLPath)if err != nil {fmt.Println("读取文件失败:", err)continue}// 解析XMLvar modMetaData ModMetaDataif err := xml.Unmarshal(xmlData, &modMetaData); err != nil {fmt.Println("解析XML失败:", err)continue}filePath := filepath.Join(currentDir, file.Name(), "About", "PublishedFileId.txt")// 直接读取整个文件内容data, err := os.ReadFile(filePath)if err != nil {fmt.Println("Error reading file:", err)continue}// 获取新的文件夹名称newDirName := string(data) + " " + modMetaData.Name// 重命名子文件夹if err := os.Rename(path, filepath.Join(filepath.Dir(path), newDirName)); err != nil {fmt.Println("重命名文件夹失败:", err)continue}fmt.Printf("文件夹已重命名为: %s\n", newDirName)}}}
}

总结

 这个Go脚本是一个实用的工具,用于根据XML文件的内容批量重命名文件夹。通过结合XML解析和文件操作,脚本能够自动化处理原本需要手动执行的重复性任务。这种自动化不仅提高了效率,还减少了出错的可能性。

http://www.15wanjia.com/news/154863.html

相关文章:

  • 网站建设公司面临的问题织梦网站后台管理系统
  • 最好的素材网站江苏建设人才是官方网站
  • 代写网站wordpress图片生成插件下载地址
  • 网络电子商务购物网站青海城乡住房和建设厅网站
  • 旅游网站首页制作网站改版需要多久
  • 网站项目的介绍国外socks5代理ip地址2023
  • 成都建材网站建设云南省建设厅官网
  • 中小企业网站建设济南兴田德润厉害吗怎么查看网站外链效果
  • php电商网站开发贴吧不要钱做网站软件
  • 做网站打广告犯法吗淘宝 网站建设 发货
  • 网站创建的一般步骤软件著作权申请流程及费用
  • 大学营销型网站建设实训课程wordpress 韩版 企业
  • 建设网站首页应该采用小型网站制作深圳
  • 做网站宿迁技术短期培训班
  • 国产化网站建设微信官方网页版
  • 辽阳免费网站建设公司公司开发网站建设价格
  • 一个网站是如何建设wordpress 打开评论
  • 网站网站怎么做的自己做网站哪家好
  • 网页设计与网站建设的报告广西城乡建设厅证件查询
  • 东莞网站哪家好用我在线网站建设
  • 成交型网站制作如何建设网站济南兴田德润简介电话
  • 建设公司网站模板crm客户管理系统功能
  • 做网站的软件有哪些wordpress网站怎么设置关键词
  • linux系统搭建网站广州网络营销首荐佐兰网络vip
  • 合肥工程建设交易中心网站重庆做网站哪家好
  • Dedecms手机网站源码网站设计和内容上的不足和建议
  • dw网站开发网页设计主要做什么工作
  • 关于网站建设的参考文献做一公司网站
  • 攀枝花住房和城乡建设厅网站深圳网站空间购买
  • 做网站优化需要做哪些事项短链接在线工具