如何从数组中删除文件

时间:2014-04-22 10:01:41

标签: matlab matlab-figure

如何在文本文件(my_data.out)中编写如下单元格?

enter image description here

enter image description here

 http_only = cell2mat(http_only)
 dlmwrite('my_data.out',http_only)

我收到如下错误:(我试图解决但仍然返回错误)

enter image description here

这是我的完整代码: 我想为每个只存储' http_only'的数据生成文本文件。 然后检查它是否符合split_URL中的单词。

 %data = importdata('DATA/URL/training_URL')
 data = importdata('DATA/URL/testing_URL')

 domain_URL = regexp(data,'\w*://[^/]*','match','once')

 no_http_URL = regexp(domain_URL,'https?://(?:www\.)?(.*)','tokens','once');
 no_http_URL = vertcat(no_http_URL{:});
 split_URL = regexp(no_http_URL,'[:/.]*','split')

 [sizeData b] = size(split_URL);

 for i = 1:100
 A7_data = split_URL{i};

 data2=fopen(strcat('DATA\WEBPAGE_SOURCE\TESTING_DATA\',int2str(i),'.htm'),'r')

 CharData = fread(data2, '*char')';  %read text file and store data in CharData
 fclose(data2);

 img_only = regexp(CharData, '<img src.*?>', 'match'); %checking

 http_only = regexp(img_only, '"http.*?"', 'match');

 http_only1 = horzcat(http_only{:});

 fid = fopen('my_data.out',int2str(i),'w');
 for col = 1:numel(http_only1)
   fprintf(fid,'%s\n',http_only1{:,col});
 end
 fclose(fid);

 feature7_data=(~cellfun('isempty', regexpi(CharData , A7_data, 'once')))

 B7(i)=sum(feature7_data)

 end

 feature7(B7>=5)=-1;
 feature7(B7<5&B7>2)=0;
 feature7(B7<=2)=1;

 feature7'

1 个答案:

答案 0 :(得分:2)

使用fprintf -

逐个单元格写入
fid = fopen('my_data.out','w');
for col = 1:numel(http_only)
    fprintf(fid,'%s\n',http_only{:,col});
end
fclose(fid);

编辑1:如果您的输入是单元格数组的单元格数组,请改用此代码。

<强>代码

http_only1 = horzcat(http_only{:});

fid = fopen('my_data.out','w');
for col = 1:numel(http_only1)
    fprintf(fid,'%s\n',http_only1{:,col});
end
fclose(fid);

编辑2:要将大量输入存储到单独的文件中,请使用此演示 -

data1 = {{'[]'} {'"http://google.com"'} {'"http://yahoo.com'}};
data2 = {{'[]'} {'"http://overflow.com"'} {'"http://meta.exchange.com'}};

data = cat(1,data1,data2);

for k = 1:size(data,1)
    data_mat = horzcat(data{k,:});
    out_filename = strcat(out_basename,num2str(k),'.out');
    fid = fopen(out_filename,'w');
    for col = 1:numel(data_mat)
        fprintf(fid,'%s\n',data_mat{:,col});
    end
    fclose(fid);
end