write data to specific column in text file

2 views (last 30 days)
I have this text file created from
I = imread('3.jpg');
i = im2bw(I);
m = max(max(i));
[r c] = find(i == m);
fid = fopen('lalit.txt','wt');
for j=1:length(r)
fprintf(fid,'%f %f\n',r(j),c(j));
end
fclose(fid);
Now i want to do
for m = 1:length(r)
z(m) = round((r(m) + c(m))/2);
end
z=z';
Now i want to save this z as third column in the same text file, but without modifying r and c.

Accepted Answer

Walter Roberson
Walter Roberson on 20 Nov 2012
The only way you should seriously consider for modifying data in text files is to read in the file and write the modified version to another file, possibly followed by renaming the new file to the old name. Modifying a text file "in place" is tricky and often not possible anyhow.
  1 Comment
Lalit Patil
Lalit Patil on 21 Nov 2012
clear all; clc; I = imread('1.jpg'); i = im2bw(I); imshow(i); m = max(max(i)); [r c] = find(i == m); a = r; fid = fopen('lalit.txt','wt'); for j=1:length(r) fprintf(fid,'%f %f\n',r(j),c(j)); end fclose(fid);
data = textread('lalit.txt'); a = unique(data); for i=a', maxVal = max(data(a==i,2)); minVal = min(data(a==i,2)); z(i,:) = round((maxVal + minVal)/2); end
fid = fopen('lalit1.txt','wt'); for j=1:length(z) fprintf(fid,'%f\n',z(j)); end fclose(fid);
Thank you.. I got it.. it doesn't matter for me whethere i write data to same file or another file..

Sign in to comment.

More Answers (0)

Categories

Find more on Data Import and Export in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!