Golang程序 从绝对路径中获取文件名

Golang程序 从绝对路径中获取文件名

我们将使用golang的filepath和string函数来从绝对路径中获取文件名。一个绝对目录从根目录开始,包括所有的中间目录。在第一个方法中,我们将使用filepath包函数,在第二个例子中,我们将使用strings包函数。

方法1:使用filepath包

在这个程序中,使用path/filepath包中的filepath.Base函数提取文件的基本名称,也就是没有目录路径的文件名称。然后,提取的文件名将显示在控制台。

语法

filepath.Base()
Go

使用path/filepath包中的 filepath.Base 函数来确定文件路径的基本名称。文件路径的最后一部分,不包括目录和任何分隔符,被称为基本名称。

算法

  • 第1步 – 创建一个包main,并在程序中声明fmt(格式包)、path/filepath包,其中main产生可执行代码,fmt帮助格式化输入和输出。

  • 第2步 – 创建一个main函数,在该函数中创建一个file_path变量,并将路径分配给file_path。

  • 第3步 – 使用filepath.Base函数,从分配到上述变量的路径中获得文件名。

  • 第4步 – 使用fmt.Println()函数在控制台打印文件名,其中ln表示新行。

例子

在这个例子中,我们将使用filepath.Base()函数来获取文件名

package main
import (
   "fmt"
   "path/filepath"
)

func main() { 
   file_path := "/path/to/myfile.txt" //assign the absolute path
   file_name := filepath.Base(file_path)  //use this built-in function to obtain filename
   fmt.Println(" The file Name from the absolute path is:", file_name)
}
Go

输出

The file Name from the absolute path is: myfile.txt
Go

方法2:使用strings.TrimRight和strings.Split函数

在这个程序中,strings.TrimRight函数被用来删除文件路径中的任何尾部斜线。文件路径被分成不同的部分,并使用Split函数用斜线将它们分开。然后访问分割后的文件路径的最后一个元素以检索文件名。

语法

func Split(str, sep string) []string
Go

Split()函数用于通过提供的分隔符来分割一个字符串。这个函数存在于strings包中,它接受要分割的字符串和分隔符作为一个参数。然后,该函数返回最终的字符串数组作为结果。

strings.TrimRight
Go

使用TrimRight函数来删除一个字符串的指定字符以及任何尾部空格。

算法

  • 第1步 – 创建一个包main并声明fmt(format package),程序中的字符串包,其中main产生可执行代码,fmt帮助格式化输入和输出。

  • 第2步 – 创建一个main函数,并在该函数中创建一个变量文件,并为其指定绝对路径。

  • 第3步 – 在这一步中,在文件变量上使用TrimRight函数,删除任何带有”/”的尾部斜线作为输入。

  • 第4步 – 使用Split函数来获得文件的最后一个组成部分。

  • 第5步 – 在控制台打印文件名。

  • 第6步 – 使用fmt.Println()函数执行打印语句,ln表示新行。

例子

在这个例子中,我们将使用strings.Split和strings.TrimRight函数来执行该程序。

package main
import (
   "fmt"
   "strings"
)

func main() {
   file := "/path/to/myfile.txt"  //assignthe variable an absolute path
   file_name := strings.TrimRight(file, "/")
   file_name = strings.Split(file_name, "/")[len(strings.Split(file_name, "/"))-1]
   fmt.Println("The File name from the absolute path is:", file_name) //print the filename
}
Go

输出

The file Name from the absolute path is: myfile.txt
Go

总结

我们用两个例子执行了从绝对路径中获取文件名的程序。在第一个例子中,我们使用了filepath.Base函数,在第二个例子中,我们使用了TrimRight和split函数来执行该程序。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册