admin 管理员组文章数量: 1086019
2023年12月19日发(作者:乱世三义蘑菇)
/megachan/blog/item/
fprintf
功能简介
数据写入文本文件
语法
fprintf(fileID, format, A, ...)
fprintf(format, A, ...)
count = fprintf(...)
描述
fprintf(fileID, format, A, ...)
适用的格式的数组的所有元素A 和 任何额外的数组参数列顺序,并写入数据到一个文本文件。 fprintf使用的编码方案在调用中指定的FOPEN。
fprintf(format, A, ...)
格式的数据并显示在屏幕上的结果。
count = fprintf(...) Matlab中文论坛
fprintf写入返回数字的字节。
输入参数
fileID
下列其中一种:
一个整数,得到的FOPEN文件标识符。
1标准输出(屏幕)。
2标准错误。
默认:1(屏幕)
format
在单引号的字符串,它描述了输出字段的格式。可以包括下列组合:
百分号后跟一个转换字符,如'%s的为字符串'。
算子描述字段宽度,精度,和其他选项。
文学文本打印。
转义字符,包括:
''
单引号
%%
百分比字符
反斜杠
1
报警
b
退格
f
n
ṛ
t
xN
N
换页
新行
回车
水平制表符
十六进制数N
八进制数N
v
垂直制表
转换字符按下列顺序(显示包括 空格):
下表列出了可用的转换字符。
数值类型
转变
Integer, signed
%d or %i
详情
Integer,
unsigned
Base 10 values
%ld or %li
64-bit base 10 values
%hd or %hi 16-bit base 10 values
%u Base 10
%oatlab中Base 8 (octal)
文
%x Base 16 (hexadecimal), lowercase letters
a–f
%X
%lu
%lo
%lx or %lX
Same as %x, uppercase letters A–F
64-bit values, base 10, 8, or 1
%hu
%ho
16-bit values, base 10, 8, or 16
浮点数
%hx or %hX
定点表示法
%f
指数符号,如3.141593e +00
%E
同为%e,但大写,如3.141593E +00
更紧凑的%e或%F,没有尾随零
%g
更紧凑的%E或%F,没有尾随零
%G
%bx or %bX
双精度十六进制,八进制或十进制值
例如%bx pi 打印为400921fb54442d18皮
%bo
%bu
%tx or %tX
单精度十六进制,八进制或十进制值
例如:%tx的圆周率打印为40490fdb
%to
1.字符
%tu
%c
%s
单个字符
字符串中的字符
额外的运营商包括:
字段宽度
最小的字符数进行打印。可以是一个数字或一个星号(*)是指输入列表中的一个论据。例如,输入列表('%12d,intmax)相当于('%* D',12,intmax)。
精确
For %f, %e, or %E:
位数的小数点的权利。
例如:'%6.4f'打印为'3.1416圆周率'
For %g or %G
数位有效数字。
例如:'%6.4G打印为PI '3.142'
可以是一个数字或一个星号(*)是指输入列表中的一个论据。例如,输入列表('%6.4f',圆周率)相当于('%*.* f的,6,4,圆周率)。
标志
行动
左对齐
打印符号字符(+或 - )。
插入前的价值空间。
垫零
标志
'–'
例子
%-5.2f
'+' 《Simulink与信号处理》
%+5.2f
' '
% 5.2f
'0'
%05.2f
%#5.0f
'#'
修改选定的数字转换: Matlab中文论坛
%o, %x, or %X,打印0,为0x或0X的前缀。
%f, %e, or %E,,打印精度小数点,即使是0。
为%g或%G号,请不要删除或尾随零小数点。
识别码
为了使加工的投入。 n $的使用语法,其中n代表在输入列表中的值的位置。
例如,'%3$s %2$s %1$s %2$s' 《Simulink与信号处理》
的输出输'A', 'B', 'C' 的如下:C B A B.
下列限制适用于转换:
数字转换只打印了复数的实部。
如果您申请一个整数或字符串转换为数字值,它包含一个分数,MATLAB的覆盖指定的转换,并利用大肠杆菌%
如果您申请一个字符串转换(%s)到整型值,MATLAB的:
发出警告。
转换值,分别对应于有效的字符代码的字符。例如,'%s'的转换[65 66 67]为ABC。
不同的平台如%指数显示符号(e)与1位数的指数不同的数字。
平台
例子
Windows
1.23e+004
UNIX
1.23e+04
不同的平台显示负零(-0)不同。
转换字符
%g or %G
0
%e or %E
%f
平台
Windows
0.000000e+000 Matlab中文论坛
0.000000
Others
A
数字或字符数组。
应用举例
多个值和文字打印到屏幕上的文字:
B = [8.8 7.7 ; ...
8800 7700];
0.000000e+00
-0.000000
-0
fprintf('X is %4.2f meters or %8.3f mmn', 9.9, 9900, B)
MATLAB的显示:
X is 9.90 meters or 9900.000 mm
X is 8.80 meters or 8800.000 mm
X is 7.70 meters or 7700.000 mm
显式转换的分数双精度值整数值,并打印到屏幕上:
a = [1.02 3.04 5.06];
fprintf('%dn', round(a));
写一个短的指数函数表到一个文本文件称为:
x = 0:.1:1;
y = [x; exp(x)];
% open the file with write permission
fid = fopen('', 'w');
fprintf(fid, '%6.2f %12.8fn', y);
fclose(fid);
% view the contents of the file
type
MATLAB的导入功能,所有的UNIX应用程序,Microsoft Word和写字板承认的文件 n'作为换行符指标。不过,如果你打算阅读与Microsoft记事本,请使用'ṛ ñ文件'移动到新的一行时写作。
fprintf(fid, '%6.2f %12.8frn', y);
在Windows系统,转换PC的风格指数符号(三个指数位)到UNIX风格的符号(2位数),并打印数据到文件:
a = [0.06 0.1 5 300]
% use sprintf to convert the numeric data to text, using %e
a_str = sprintf('%et',a)
% use strrep to replace exponent prefix with shorter version
a_str = strrep(a_str,'e+0','e+');
a_str = strrep(a_str,'e-0','e-');
% call fprintf to print the updated text strings
fid = fopen('','w');
fprintf(fid, '%s', a_str);
fclose(fid);
% view the contents of the file
type
在屏幕上显示一个超链接(MathWorks公司网站):
site = '';
title = 'The MathWorks Web Site';
fprintf('%sn', site, title)
版权声明:本文标题:matlab fprintf功能 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1702926531a436222.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论