求助关于txt文档中正确显示\n转义的问题
for(i=1;i<10;i++){
myFile = "C:\\output.txt";
cz=file_open(myFile, FO_MODE_APPEND);
for(j=1;j<=i;j++)
{
if(cz == E_OK)
{
result=i*j;
file_printf(myFile, "%s",i & "*" & j & "=" & result & " ");
}
else
{
report_msg("file_open failed with error " & cz);
}
}
file_printf(myFile,"%s\n");
file_close(myFile);
}
9*9乘法口诀的输出到txt文档,实现三角状输出,但是txt无法识别\n所以在txt文档中无法正确显示,小弟求教各位高人了sdlkfj2 for(i=1;i<10;i++)
{
myFile = "C:\\output.txt";
cz=file_open(myFile, FO_MODE_APPEND);
for(j=1;j<=i;j++)
{
if(cz == E_OK)
{
result=i*j;
file_printf(myFile, "%s",i & "*" & j & "=" & result & " ");
}
else
{
report_msg("file_open failed with error " & cz);
}
}
#“\r\n”
file_printf(myFile,"%s\r\n");
file_close(myFile);
} output.txt:
1*1=1
2*1=2 2*2=4
3*1=3 3*2=6 3*3=9
4*1=4 4*2=8 4*3=12 4*4=16
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 谢谢楼上,
发现\r\n 的位置不能颠倒必须这个顺序才行 我修改后的代码:
myFile = "output.txt";
for(t=1;t<10;t++)
{
file_open(myFile, FO_MODE_APPEND);
file_printf(myFile, "%s","\t" & t);
}
file_printf(myFile,"\r\n");
file_close(myFile);
for(i=1;i<10;i++)
{
check=file_open(myFile, FO_MODE_APPEND);
file_printf(myFile, "%s",i);
for(j=1;j<=i;j++)
{
if(check == E_OK)
{
result=i*j;
file_printf(myFile, "%s","\t" & i & "*" j & "=" & result);
}
else
{
report_msg("file_open failed with error " & check);
}
}
file_printf(myFile,"\r\n");
file_close(myFile);
} 输出结果:
1 2 3 4 5 6 7 8 9
1 1*1=1
2 2*1=2 2*2=4
3 3*1=3 3*2=6 3*3=9
4 4*1=4 4*2=8 4*3=12 4*4=16
5 5*1=5 5*2=10 5*3=15 5*4=20 5*5=25
6 6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36
7 7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49
8 8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64
9 9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 结果在哪输出了?我试了,怎么看不到结果?请赐教!!!! 学到一点知识,谢谢楼主,结果应该就在C盘底下的output.txt中阿,如果是新手上路的最后那段代码保存位置应该是在wr文件保存的默认路径中,相信在系统设置中可以查到。这就是绝对路径和相对路径的区别了。 我觉得楼上各位的代码存在问题:不应该将文件重复打开和关闭。重复打开和关闭会影响效率,而且可能无法将乘法表全部写入文本里。
以下是我写的代码:
file = "C:\\test.txt";
rc = file_open(file,FO_MODE_APPEND);
if(rc == E_OK)
{
for(i=1;i<10;i++)
{
for(j=1;j<=i;j++)
{
result = i*j;
file_printf(file,"%s",i&"*"j&"="&result&" ");
}
file_printf(file,"%s\r\n");
}
}
else
{
report_msg("file can't open");
}
file_save(file);
file_close(file);
[ 本帖最后由 jackiepsq 于 2007-1-5 23:26 编辑 ]
回复 #9 jackiepsq 的帖子
没有file_save()这个函数的吧回复 6# 的帖子
我运行了一下,这个不是排成三角形的,是横排着的。
页:
[1]