Golang程序 获取文件扩展名

Golang程序 获取文件扩展名

在golang中,我们可以使用路径包和字符串包来获取某个文件的扩展名。在这篇文章中,我们将使用两种方法获得文件的扩展名。在第一种方法中,我们将使用路径包中的函数path.Ext;在第二种方法中,我们将使用字符串包中的函数strings.LastIndex。

方法1:使用路径包

在这个方法中,我们将使用path包中的path.Ext来获取文件扩展名。这个内置函数将把文件作为一个输入,其扩展名将被打印出来。

语法

path.Ext

Go path/filepath软件包使文件的处理更加容易。它提供了一种方法来连接和分割文件路径,提取文件名和扩展名,并对文件路径进行一些额外的操作。函数filepath.Ext返回与提供的路径相关的文件扩展名。它返回文件路径中以最后一个”. “字符开始的部分。”字符开始的部分。如果路径不包含”. “字符,则返回一个空字符串。

算法

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

  • 第2步 – 创建一个main函数,并在该函数中创建一个变量myfile,将所需的文件分配给这个变量。

  • 第3步 – 使用path.Ext函数查找所需文件的扩展名,并在扩展名变量中获得该扩展名。

  • 第4步 – 在控制台打印扩展名。

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

例子

在这个例子中,我们将使用path包中的path.Ext函数来查找文件扩展名。

package main
import (
   "fmt"
   "path"
)

func main() {
   myfile := "file1.txt"//create file
   extension := path.Ext(myfile)  //obtain the extension of file
   fmt.Println("The extension of", myfile, "is", extension) //print extension
}

输出

The extension of file1.txt is .txt

方法2:使用字符串包

在本例中,strings.LastIndex用于查找文件名中最后出现的点(.)。如果不能找到该点,该函数返回-1,表示该文件没有扩展名。如果找到了点,从点到字符串结尾的文件路径子串被设置为ext变量。剩下的代码与第一个例子中的代码相同。让我们看看它是如何通过代码和算法执行的。

语法

strings.LastIndex()

Go中的strings包提供了许多处理字符串的函数。要找到一个字符串中特定子串的最终实例,可以使用字符串包中的LastIndex函数。

算法

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

  • 第2步 – 创建一个main函数,在该函数中创建一个文件并将其分配给一个名为myfile的变量。

  • 第3步 – 现在,使用strings.LastIndex函数来获得最后出现的点(.)的位置。

  • 第4步 – 如果没有得到扩展名,则打印失败信息。

  • 第5步– 但是如果获得了扩展名,则在ext变量中接收它,它是文件字符串的子串,从索引开始直到结束。

  • 第6步 – 使用fmt包中的fmt.Println()函数将ext打印到控制台,其中ln表示新行。

例子

在这个例子中,我们将使用strings包中的strings.LastIndex来执行这个程序。

package main
import (
   "fmt"
   "strings"
)

func main() {
   myfile := "file1.txt"
   extension := strings.LastIndex(myfile, ".") //obtain the extension after the dot
   if extension == -1 {
      fmt.Println("The file has no extension")
      return   //if no extension is present print failure
   }
   ext := myfile[extension:] //obtain the extension in ext variable
   fmt.Println("The extension of", myfile, "is", ext) //print the extension of file
}

输出

The extension of file1.txt is .txt

结论

我们用两种方法执行了获取文件扩展名的程序。在第一种方法中,我们使用路径包函数,在第二种方法中,我们使用字符串包函数。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程