Character limit in using fwrite?
12 次查看(过去 30 天)
显示 更早的评论
I have a char string that I am trying to write to a .NET file, which is somewhat similar to a .txt file. However, I've noticed that strings above a certain length (seems to be around 100 characters) return the error message
Error using fwrite
Invalid file identifier. Use fopen to generate a valid file identifier.
Strings under this length write to my file directory just fine.
This is my first time using these MATLAB data writing commands, so I'm just using the basic file writing commands right now:
clear fileID
fileID = fopen(text, 'w');
fwrite(fileID, text);
fclose(fileID);
where text is my character string. How can I resolve this issue for these longer char strings?
Also, two somewhat related questions, if you don't mind:
(1) how do I write this string to a particular file extension, like .NET?
(2) is there a way to specify a name for the file that I'm writing to?
Thanks!
0 个评论
采纳的回答
Image Analyst
2013-12-21
编辑:Image Analyst
2013-12-21
text is a built in function name. That could be your problem. Pick a different name, and use your actual string variable name instead of text.
What is fileID? Is it -1? If so, you were unable to write to the file, possibly because of permission denials or the disk is full or something else.
13 个评论
Walter Roberson
2013-12-21
filename = ['test_', datestr(now, 'yyyymmddHHMMFFF'), '.txt'];
or equivalently,
filename = sprintf('test_%s.txt', datestr(now, 'yyyymmddHHMMFFF'));
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Low-Level File I/O 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!