51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5675|回复: 10
打印 上一主题 下一主题

求助关于txt文档中正确显示\n转义的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2006-7-20 11:48:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
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
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 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);        
}
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 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
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2006-7-21 20:51:52 | 只看该作者
谢谢楼上,

发现\r\n 的位置不能颠倒必须这个顺序才行
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 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);       
}
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 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
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2006-8-7 18:00:41 | 只看该作者
结果在哪输出了?我试了,怎么看不到结果?请赐教!!!!
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2006-8-8 00:19:08 | 只看该作者
学到一点知识,谢谢楼主,结果应该就在C盘底下的output.txt中阿,如果是新手上路的最后那段代码保存位置应该是在wr文件保存的默认路径中,相信在系统设置中可以查到。这就是绝对路径和相对路径的区别了。
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 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 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2007-2-28 17:00:26 | 只看该作者

回复 #9 jackiepsq 的帖子

没有file_save()这个函数的吧
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2008-5-5 15:23:57 | 只看该作者

回复 6# 的帖子

我运行了一下,这个不是排成三角形的,是横排着的。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-25 00:00 , Processed in 0.093388 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表