专栏
标签
如何使用readlines()函数读取txt文件数据
技术分享
发布于 2025-10-16 19:25:30
查看 8过去229天

读取以下格式的txt文件中的数据

image.png

可以使用以下程序进行读取:

lines = readlines("data.txt")
A = []
for line in lines
    println(line)
    push!(A, parse.(Float64, split(line)))
end
B = hcat(A...)

程序运行结果为:

julia> 正在运行 读取txt文件.jl
1 2
3 4
5 6
7 8
2×4 Matrix{Float64}:
 1.0  3.0  5.0  7.0
 2.0  4.0  6.0  8.0

程序中主要函数解释:

  1. lines = readlines("data.txt"):读取 "data.txt" 文件中的每一行,并将它们作为一个字符串数组返回,赋值给变量 lines
  2. push!(A, parse.(Float64, split(line))) :将当前行按空白字符分割(默认行为),尝试将分割后的字符串数组中的每个元素解析为 Float64 类型的浮点数,并将解析后的数组追加到 A 中
  3. B = hcat(A...):将 A 中的所有子数组水平连接(列连接)成一个矩阵 B

类似的txt文件的数据格式,都可以使用该代码模板进行适当修改后进行读取。

Tips:

当txt文件中出现表头时,可以根据表头所占行数,灵活改变for循环中lines中的索引,例如,txt文件数据更改为:

image.png

只需要将for循环中的lines范围改为 lines[2:end] 即可,本质上lines为字符串向量。代码示例如下:

lines = readlines("data.txt")
A = []
for line in lines[2:end]
    println(line)
    push!(A, parse.(Float64, split(line)))
end
B = hcat(A...)

运行结果为:

julia> 正在运行 读取txt文件.jl
1 2
3 4
5 6
7 8
2×4 Matrix{Float64}:
 1.0  3.0  5.0  7.0
 2.0  4.0  6.0  8.0
所属专栏:Julia语言
产品信息:Syslab科学计算环境
科学计算

全部回答

暂无数据
暂无数据
用户
和原帖交流更多问题细节吧,去
我要发帖 我要发帖
资料中心 资料中心
查看更多>
热门帖子 热门帖子
主要贡献者 主要贡献者
过去7天