Transfer lines in a text file to a new text file

2 次查看(过去 30 天)
I need to transfer lines between two text files into a new text file. The text file in which I need to match lines is called m21rmmorphU.txt, and I need to match the lines belonging in the text file,virgoclusterrm.txt, that also belong in m21rmmorphU.txt, into a new text file.
So, I want to extract the lines that match in m21rmmorphU.txt from virgoclusterrm.txt into a new text file and remove the matched lines from m21rmmorphU.txt.
Files are attached.

采纳的回答

Cedric
Cedric 2015-8-4
You can do something along this line:
content1 = fileread( 'm21rmmorphU.txt' ) ;
content2_rows = strsplit( fileread( 'virgoclusterrm.txt' ), sprintf( '\n' )) ;
found = cellfun( @(s)~isempty(strfind(content1, s)), content2_rows ) ;
output_rows = content2_rows(found) ;
fId = fopen( 'similar.txt', 'w' ) ;
fprintf( fId, '%s\n', output_rows{:} ) ;
fclose( fId ) ;
  4 个评论
Cedric
Cedric 2015-8-4
编辑:Cedric 2015-8-4
My pleasure! You have been asking a lot of questions about the same file(s) lately, and often in a way which leads to answers that read file(s), perform one operation, and export file(s). This can be quite slow if you have many operations to perform. If the performance degrades too much, you may want to actually parse the input file, perform all the operations that you need to perform, and at the end export only once to file.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Import and Export 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by