write string in text file
조회 수: 472 (최근 30일)
이전 댓글 표시
How can I write some strings in text file (each strinng in one line)? example:
Happy
New
Year
댓글 수: 0
채택된 답변
Image Analyst
2013년 12월 24일
편집: Image Analyst
2013년 12월 27일
Try this:
fid = fopen('ny.txt','wt');
fprintf(fid, 'Happy\nNew\nYear');
fclose(fid);
댓글 수: 1
Image Analyst
2013년 12월 24일
편집: Image Analyst
2013년 12월 27일
Or, if your strings are in variables,
fid = fopen('ny.txt','wt');
fprintf(fid, '%s\n%s\n%s', string1, string2, string3);
fclose(fid);
추가 답변 (5개)
cui,xingxing
2022년 9월 5일
편집: cui,xingxing
2024년 4월 27일
hi, if you use latest matlab 2022a, you can use new matlab build-in function WRITELINES
-------------------------Off-topic interlude, 2024-------------------------------
I am currently looking for a job in the field of CV algorithm development, based in Shenzhen, Guangdong, China,or a remote support position. I would be very grateful if anyone is willing to offer me a job or make a recommendation. My preliminary resume can be found at: https://cuixing158.github.io/about/ . Thank you!
Email: cuixingxing150@gmail.com
댓글 수: 0
Walter Roberson
2013년 12월 24일
fid = fopen('ny.txt','wt');
fprintf(fid, 'Happy\New\n');
fprintf(fid,, 'Year\n');
fclose(fid)
Ali
2017년 8월 3일
Is there a way to use save function to do that simple job? I could never get why an intuitive write in matlab needs such an un-intuitive function F-Print-F.
댓글 수: 1
Image Analyst
2017년 8월 3일
That's just the name of it. It matches the name used in other languages like C, Java, etc. The save() function does not write custom formatted strings out to a text file like fprintf() does. The save() function saves variables in a binary, proprietary fashion.
Ali
2017년 8월 3일
편집: Ali
2017년 8월 3일
Thanks for the comments. Save has a -ascii option which is supposed to do what I need. But now that you know about matlab, could you please comment on my question here: write multiple lines of text into a text file ?
댓글 수: 1
Walter Roberson
2017년 8월 3일
"Each variable must be a two-dimensional double array."
Character strings are not double array. double() of the string is done internally and that is written, getting back results such as
1.0400000e+02 1.0100000e+02 1.0800000e+02 1.0800000e+02 1.1100000e+02 9.2000000e+01 1.1000000e+02 1.1900000e+02 1.1100000e+02 1.1400000e+02 1.0800000e+02 1.0000000e+02
for 'hello\nworld'
참고 항목
카테고리
Help Center 및 File Exchange에서 Characters and Strings에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!