在go语言中逐行显示文本文件的行数示例代码

2023-06-01 00:00:00 示例 文本文件 行数

在go语言中可以使用cat或更多的命令来逐行显示一个文本文件。

如果你有这么一个要实现功能:

在终端中逐行显示文件内容,并为每一行标上数字,你还想知道该文本文件中共有多少行。

你怎么实现它?


解决方案:

使用这个简单的Golang程序来显示文本文件的内容,并在右边显示行号。

go文件:

countdisplaylines.go

代码示例:

 package main
 
 import (
         "fmt"
         "io/ioutil"
         "os"
         "strings"
 )
 
 func main() {
 
         if len(os.Args) <= 1 {
                 fmt.Printf("USAGE : %s <target_filename> \n", os.Args[0])
                 os.Exit(0)
         }
         
         fileName := os.Args[1]
         
         fileBytes, err := ioutil.ReadFile(fileName)
         
         if err != nil {
                 fmt.Println(err)
                 os.Exit(1)
         }
         
         lines := strings.Split(string(fileBytes), "\n")
         
         //移除线片中的最后一个项目
         //是空的
         lines = lines[:len(lines)-1]
         
         //len()函数将计算总行数。
         fmt.Println(fileName, "总共有", len(lines), "行")
         
         for i, line := range lines {
              // i = i + 1 
                    // 取消注释,从1开始,而不是从0开始
              fmt.Println(i, line)
         }
 }

执行及输出:

$ ./countdisplaylines 123.txt
123.txt总共有3行
0 one
1 two
2 three

相关文章