playanybody 发表于 2006-7-20 11:48:06

求助关于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

风过无息 发表于 2006-7-21 09:43:23

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);      
}

风过无息 发表于 2006-7-21 09:43:52

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

playanybody 发表于 2006-7-21 20:51:52

谢谢楼上,

发现\r\n 的位置不能颠倒必须这个顺序才行

playanybody 发表于 2006-7-21 20:56:01

我修改后的代码:

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);       
}

playanybody 发表于 2006-7-21 20:56:30

输出结果:

        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

阿文 发表于 2006-8-7 18:00:41

结果在哪输出了?我试了,怎么看不到结果?请赐教!!!!

wenlaqing 发表于 2006-8-8 00:19:08

学到一点知识,谢谢楼主,结果应该就在C盘底下的output.txt中阿,如果是新手上路的最后那段代码保存位置应该是在wr文件保存的默认路径中,相信在系统设置中可以查到。这就是绝对路径和相对路径的区别了。

jackiepsq 发表于 2007-1-3 23:18:16

我觉得楼上各位的代码存在问题:不应该将文件重复打开和关闭。重复打开和关闭会影响效率,而且可能无法将乘法表全部写入文本里。
以下是我写的代码:

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 编辑 ]

lsz7741 发表于 2007-2-28 17:00:26

回复 #9 jackiepsq 的帖子

没有file_save()这个函数的吧

海之蓝魂 发表于 2008-5-5 15:23:57

回复 6# 的帖子

我运行了一下,这个不是排成三角形的,是横排着的。
页: [1]
查看完整版本: 求助关于txt文档中正确显示\n转义的问题