Warning: Escape sequence ' ' is not valid. See 'help sprintf' for valid escape sequences
조회 수: 4 (최근 30일)
이전 댓글 표시
Im trying to create a function that changes the destination folder for some data put into a text file, trouble is that when I try to input an address such as J:\My_Documents\MATLAB into an inputdlg box, and then use sprintf on the answer so that it can be used in
filename = fullfile('Destination','Filename.txt');
sprintf thinks that the \'s in the destination name mean things like \n and \t so it gives me an error saying:
Warning: Escape sequence 'M' is not valid. See 'help sprintf' for valid escape sequences.
and sprintf itself only outputs 'J:' and not the whole destination name is there anyway I can I can change a written answer from an inputdlg box to a useful form for my purpose that doesn't try to do any unwanted formatting on it?
댓글 수: 6
David Young
2014년 9월 16일
Star Strider: I don't understand what sprintf is doing here. Isn't it the case that for any string s, sprintf('%s', s) is equal to s? So wouldn't
s = char(Destination);
be simpler? Have I missed something?
Guillaume
2014년 9월 16일
Yes, sprintf('%s', s) doesn't do anything. Usually if you use the %s it's to insert a string into another.
For that matter, the char(s) is also useless, since the values returned by inputdlg are already strings, so
s = Destination;
Would work just as well and you might as well use Destination directly.
채택된 답변
Image Analyst
2014년 9월 16일
Just avoid the situation in the first place . Use forward slashes /. Windows understands them just fine - no problem whatsoever. Perhaps that's not widely known, but yes, Windows is perfectly happy to use /, at least in MATLAB and Windows Explorer. You don't need to use backslashes at all, so don't.
댓글 수: 2
Walter Roberson
2016년 1월 25일
nik sharma, we will need to see your code.
Image Analyst is correct about / being accepted by MS Windows. See https://blogs.msdn.microsoft.com/larryosterman/2005/06/24/why-is-the-dos-path-character/
추가 답변 (0개)
참고 항목
카테고리
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!