如何删除文本出现在1000行数据文件?

1视图(30天)
我想跳过行只有文本和数据。

答案(2)

埃米尔哈姆萨
埃米尔哈姆萨 2020年3月10日
一个简单的解决方案将在R2019a开始工作
数据= readmatrix (“s11_alldata_alongaxis.txt”);
writematrix(数据(1:1000:)“s11_alldata_alongaxis_new.txt”);
然而,这可以减缓如果文件s11_alldata_alongaxis。三是非常大的。
一个更有效的解决方案
文件= fopen (“s11_alldata_alongaxis.txt”,“r”);
data =字符串(1000);
i = 1:1000
(我)= fgetl数据(文件);
结束
文件关闭(文件);
文件= fopen (“s11_alldata_alongaxis_new.txt”,' w ');
流(文件,“% s \ n”、数据);
文件关闭(文件);
4评论
埃米尔哈姆萨
埃米尔哈姆萨 2020年3月10日
这段代码将在单独的文件中提取数字数据和拯救他们,因为有61集,所以61文件将被创建,它只包含数据。
文件= fopen (“s11_alldata_alongaxis.txt”,“r”);
data =字符串(1);
数= 1;
真正的
current_line = fgetl(文件);
如果current_line = = 1
打破;
结束
数据(数)= current_line;
数=计数+ 1;
结束
文件关闭(文件);
指数=找到(包含数据,“Curvelabel”));
我=长度(索引):1:1
文件= fopen ([“文件”sprintf (' % 2 d ',我)' . txt '),' w ');
part_data =数据(索引(我)+ 15:结束);
流(文件,“% s \ n”,part_data);
数据(索引(i) 1:结束)= [];
文件关闭(文件);
结束
文件= fopen (“file00.txt”,' w ');
流(文件,“% s \ n”、数据);
文件关闭(文件);

登录置评。


穆罕默德•拉赫曼
穆罕默德•拉赫曼 2020年3月10日
谢谢哈姆扎,
但我有2016 Matlab。文件中的文本复发后每1001行。
所以,如果文本第一出现在第1003行,似乎又在第2005行,因为2004行是空白。
第三个文本将出现在第3007行,等等。
我需要忽略所有的文件有61组数据。
1评论
埃米尔哈姆萨
埃米尔哈姆萨 2020年3月10日
请删除这个答案并保持连续讨论同样的问题。我已经评论你的答案在我的回答。

登录置评。

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!