golang-path-知识点.docx
下面两个函数主要用于聘Windows路径分隔符转换为1.inux路径分隔符,处理完后再转换回去,只在Windows中有用,在1.inUX中没必要:1. ToS1.ash函数:fncToS1.ash(pathstring)string释义:将path中平台相关的路径转换为'rS=fi1.epath.ToS1.ash(三)2. FrooS1.ash函数:funcFromS1.ash(pathstring)string释义:将path中的转换为系统相关的路径分隔符取路径的H录Dir返回路径中除去最后一个路径元素的部分.即该路径最后一个元素所在的目录.取路径的文件名Base函数返伸1路径的最后一个元素.在提取元素的会去掉末尾的斜杠.如果路径是会返回如果路径是只有一个斜杆构成的,会返回T-5.Sp1.it函数:funcSp1.it(pathstring)(dir,i1.estring)释义:获取Path中最后一个分隔符前后的两部分例子:1./5、BaSe获取path中坡后一个分隔符前后的两部分/之前包含分隔符,之后不包含分隔符s="go1.angworkspace/1.eetcode/aa.js"d,s:=fi1.epath.Sp1.it(三)fmt.Print1.n(*Sp1.it:",d,s)/Sp1.it:/go1.angworkspace/1eetcode/aa.js函数:funcExt(pathsiring)siring释义:获取路径字符串中的文件犷展名例子:1. /6、BaSe获取路径字符串中的文件扩展名2. s-Vgo1.angjrorkspaceZ1.eetcodeZaa.js*3. s=fiIepa1.h.Ext(三)4. frat.Print1.nCExt:",s)5. /Ext:.js8.Join函数:funcJoin(e1.em.string)string糅义:将e1.em中的多个元素合并成一个路径,忽略空元素,清理多余字符例子:1. /8、Join将e1.em中的多个元素合并为一个路径,忽略空元素,清理多余字符。2. s="go1.ang_workspace”3. s2=*1.oetcodeaa.js*4. s=fiIepa1.h.Join(s,s2)5. frat.Print1.nCrJoin:",s)6. /Join:go1.ang_workspace1.eetco<ieaa.js14. Match函数:funcMatch(pattern,namestring)(matchedboo1.,errerror)糅义:根据Pattern来判断name是否匹配,如果匹配则返回true例子:1. /14,根据Pat1.ern来判断name是否匹配,如果匹配则返回IrUe2. r:="home/CatCh/*"3. s="'honecatchfoo'4. f,_=fi1.epath.Match(r,s)5. fm1.Print1.nCMiitch:",f)6. /Match:true15. G1.ob函数:funcG1.Ob(PutIernstring)(matchesstring,errerror)释义:列出与指定的模式PaItern完全匹配的文件或目录(匹配原则同上)例子:1. 15、列出与指定的模式pattern完全匹配的文件或目录(匹配原则同match)2. r=F:Wgo1.angWOrkSpaCe3. s1.ist,_三fi1.epath.G1.ob(r)4. fmt.Print1.n(-G1.ob:".s1.ist)5. /G1.ob:F:go1angworkspaceshenqi-sorverF:go1.angworkspacesrc16. Wa1.k函数:funcWa1.k(rootstring,wa1.k1.nWu1.kFunc)error释义:遍历指定目录(包括子目录),对遍历的项目用Wa1.kFn函数进行处理例子:1. /16,遍历指定目录(包括子目录),对遍历的项目用WaIkFn函数进行处理2. pwd,_:=os.GetwdO3. fi1.epath.Wa1.k(p*,d>func(pathstring,infoos.FiIe1.nfo,errerror)error4. ifmatch,err:=fi1.epath.Match(*?*,fi1.epath.Base(fpath):match5. mt.Print1.n(,Wa1.kpath:,fpath)6.7.8. 9. return10. )11. /Wa1.kpath:fmt.PrintIn(,Wa1.kinfo:",info)returnerrni1F:go1.angworkspaceGo1.earnsrc