使用读取文件后,ioutil.ReadFile我尝试使用strings.Split和分隔符拆分我的字节“字符串” "\n",但我收到了一个额外的换行符(切片的长度增加了+ 1)。为什么这不符合预期?// numbers.txt12345func main() { data, _ := ioutil.ReadFile("numbers.txt") input := strings.Split(string(data), "\n") fmt.Println("Len: ", len(input)) for i, v := range input { fmt.Println(i, v) }}// OutputLen: 60 11 22 33 44 55预期的:Len: 50 11 22 33 44 5可能是Read text file into string array (and write)的副本 查看评论注意 strings.Split 将在解析常规 POSIX 文本文件示例时附加一个额外的行(一个空字符串) – bain 2014-12-01 20:33
1 回答

ibeautiful
TA贡献1993条经验 获得超6个赞
strings.Split不会附加额外的行 - 否则它将在文档中指定。
如果您按以下方式查看文件:
1\n
2\n
3\n
4\n
5\n
您会注意到,如果您将字符串拆分为 ,则必须有 6 个条目\n。
1\n2\n3\n4\n5\n<last empty item is here>
- 1 回答
- 0 关注
- 150 浏览
添加回答
举报
0/150
提交
取消