fileID = fopen('nums.txt','w'); %opens a.txt file
s = input('s = '); %requests a number as input from the keyboard
a = char(s) %converts the number to character
fprintf(fileID,'%4.4f\n',a); %prints the character (not number) in a *.txt file
目的是在* .txt文件中打印一个字符,该文件预先写为数字。我输入数字作为输入,然后我将数字转换为相应的字符 即使matlab还给我一个=!在命令窗口中,* .txt文件包含数字(键盘输入)33(未转换为相应的字符,应该是)
期待您的慷慨帮助。
答案 0 :(得分:3)
主要问题在于 label.adjustsFontSizeToFitWidth = true
:fprintf()
标记表示浮点数,而%f
似乎是字符串。您需要使用a
在%s
中编写字符串。
假设我们按照您的建议输入fprintf()
根据您的代码,在命令窗口中我们将33
,这是正确的,但在.txt文件中我们将a=!
因为33.0000
本质上重新转换它由于fprintf()
标签,回到数字(浮点,准确)
将%f
替换为
fprintf()
命令窗口显然仍会显示fprintf(fileID,'%s\n',a); %prints the character (not number) in a *.txt file
,但这次在.txt文件中我们也会显示a=!
。