24小时热门版块排行榜    

查看: 3359  |  回复: 9
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

jiasen1980

金虫 (正式写手)


[交流] 【讨论】求助Matlab批量读取和处理一个文件夹里的txt文件

现在有一个文件夹 里面有800个的txt文件 文件的名字按照数字顺序从1到800 每个TXT文件内容 共三列数字 每列1000行
,以逗号分隔,我只需要第三列有用数字

现在我想写一个.M文件 批量读取和处理这个文件夹里的txt文件
我是新手,时间又紧,那位虫子帮一下  
送100金币
回复此楼

» 收录本帖的淘帖专辑推荐

MATLAB相关

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
jiasen1980(金币+40): 2011-03-09 10:55:47
jiasen1980(金币+10): 2011-03-09 11:26:39
引用回帖:
Originally posted by jiasen1980 at 2011-03-09 02:02:08:
现在有一个文件夹 里面有800个的txt文件 文件的名字按照数字顺序从1到800 每个TXT文件内容 共三列数字 每列1000行
,以逗号分隔,我只需要第三列有用数字

现在我想写一个.M文件 批量读取和处理这个文件夹里的 ...

纯数据txt文件,直接load就可以了。

写了个简单的例子,先写了8个文件,每个文件中存取1000*3的随机数。
然后读取这8个文件,将每个文件中的第三列存到矩阵A中。
CODE:
function batchWriteReadTxt

% 文件数
TxtFileNum = 8;

% 写数据文件
for i = 1 : TxtFileNum
        % 构造文件名字符串
        FileName = sprintf( '%s.txt', num2str( i ) );
        % 以写方式创建文件
        fid = fopen( FileName, 'w' );
        % 如果创建文件成功
        if fid > 0
                % 生成随机数
                A = rand( 1000, 3 );        % 1000行,3列
                % 写数据
                fprintf( fid, '%10.4f, %10.4f, %10.4f\r\n', A );
                % 关闭文件
                fclose( fid );
        end
end

% 初始化数据,将每个文件中的第三列存为1列,1000行
A = zeros( 1000, TxtFileNum );
% 读文件
for i = 1 : TxtFileNum
        % 构造文件名字符串
        FileName = sprintf( '%s.txt', num2str( i ) );
        % 纯数据文件,直接load就可以
        data = load( FileName );
        A( :, i ) = data( :, 3 );       
end

3楼2011-03-09 09:30:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 10 个回答

hhucy

实习版主 (著名写手)


★ ★
xiegangmai(金币+2): 鼓励讨论交流! 2011-03-09 09:55:35
jiasen1980(金币+40): 2011-03-09 10:56:07
楼上正解
顺便补充一下如何直接load
1.        load
a=load ('x.dat')%读取 *.dat文件;
a=load ('x.txt')%读取 *.txt文件;
2.        importdata
importdata(‘filename’,’delimiter’)
delimiter:是分割符
3.        csvread
通常用来读取逗号分开的数据文件
X=csvread(‘filename’,row,clo,range)
4.        demread
比较通用吧,可以读任何任何其它字符分割的的数据。
Eg:
原来的数据x.txt
a=dlmread('x.txt')

[ Last edited by hhucy on 2011-3-9 at 09:34 ]
4楼2011-03-09 09:31:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

justyet

金虫 (著名写手)


jiasen1980(金币+8): 2011-04-01 22:43:24
楼主问的是 “批量读取和处理一个文件夹里的txt文件 ”

namelist  = dir('*.txt');
然后看一下namelist 的长度,就知道有几个文本文件了,再然后就是通常的那些load,矩阵操作之类的。
6楼2011-04-01 17:52:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yueyue_2013

金虫 (小有名气)


★
小木虫: 金币+0.5, 给个红包,谢谢回帖
我也补充一点点
1.        load
a=load ('x.dat')%读取 *.dat文件;
a=load ('x.txt')%读取 *.txt文件;
2.        importdata
importdata(‘filename’,’delimiter’)
delimiter:是分割符
3.        csvread
通常用来读取逗号分开的数据文件
X=csvread(‘filename’,row,clo,range)
4.        demread
比较通用吧,可以读任何任何其它字符分割的的数据。
Eg:
原来的数据x.txt
a=dlmread('x.txt')
8楼2014-01-14 09:06:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
2011-03-10 22:33   回复  
引用回帖:
Originally posted by jiasen1980 at 2011-03-09 02:02:08: 现在有一个文件夹 里面有800个的txt文件 文件的名字按照数字顺序从1到800 每个TXT文件内容 共三列数字 每列1000行 ,以逗号分隔,我只需要第三列有用数字 现在我想写一个.M文件 批量读取和处理这个文件夹里的 ...

普通表情 龙 兔 虎 猫 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 cqv1zKnzd7hr 2026-11-09 4/200 2026-11-10 12:52 by C6CRn66RYYXS
[考博] 申请环境,微生物方向博士 +3 浅笑09 2026-11-08 3/150 2026-11-10 12:44 by 可淡不可忘
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 cqv1zKnzd7hr 2026-11-09 4/200 2026-11-10 12:19 by C6CRn66RYYXS
[考研] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 cqv1zKnzd7hr 2026-11-09 4/200 2026-11-10 11:46 by YHiw1gou1Eda
[教师之家] 延安大学回应“副教授留绝笔信”:确已离世,正核实举报内容 +4 yexuqing 2026-11-04 6/300 2026-11-10 11:13 by susizheng
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 0TEMgxdT1eIw 2026-11-09 4/200 2026-11-10 11:02 by YHiw1gou1Eda
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 0TEMgxdT1eIw 2026-11-09 4/200 2026-11-10 10:18 by YHiw1gou1Eda
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 zSbvVX9JFl9J 2026-11-09 5/250 2026-11-10 09:23 by 1yv6QACPoY1E
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 zSbvVX9JFl9J 2026-11-09 3/150 2026-11-10 01:40 by FChKX8meu1ds
[文学芳草园] 厉娜 +3 张丹枫1991 2026-11-09 5/250 2026-11-09 16:53 by 张丹枫1991
[考博] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 12/600 2026-11-09 13:26 by Equinoxhua
[考研] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 15/750 2026-11-09 13:19 by Equinoxhua
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +6 5sJFDKp2kwuI 2026-11-06 14/700 2026-11-09 11:52 by GwrQVVR6Oenx
[考博] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +5 5sJFDKp2kwuI 2026-11-06 15/750 2026-11-09 11:41 by GwrQVVR6Oenx
[考研] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 5sJFDKp2kwuI 2026-11-06 12/600 2026-11-09 06:32 by l48hFd8Nwae2
[公派出国] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +6 ttH3f1oA6ace 2026-11-04 12/600 2026-11-06 16:10 by 5sJFDKp2kwuI
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 ttH3f1oA6ace 2026-11-04 11/550 2026-11-06 16:10 by 5sJFDKp2kwuI
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 7/350 2026-11-06 02:13 by qL1cU46YIdK0
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 10/500 2026-11-06 02:04 by qL1cU46YIdK0
[硕博家园] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 ttH3f1oA6ace 2026-11-04 9/450 2026-11-06 02:02 by qL1cU46YIdK0
信息提示
请填处理意见