搜索
查看: 1299|回复: 13
打印 上一主题 下一主题

该怎么自动打开所创建的文档?

[复制链接]
跳转到指定楼层
楼主
发表于 2013-11-14 22:36:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
情况是这样滴
在一段代码程序中自己创建了一个word文档,用以记录所输出的数据。
现在的问题是怎么把这个文档打开?
自己遇到的的问题是创建的文件打不开,
自己才开始学习,现在想到的应该有两种途径解决,可自己能力实在有限,
所以求教大牛给出打开创建的这个文件的方法。
主要代码献上!
#include <stdio.h>
main()
{
FILE *tp;      /*创建指针  用以新建记录输出数据的word文档*/
tp=fopen("D:\\tp.doc","w+");           /*创建记录word文档*/
fprintf(tp,"你好啊!!!");
system ("D:\\tp.doc");          /*打开创建的word文档*/
printf ("你好啊!!!\n");
system ("pause");
return 0;
}
求解决方法!!!

最佳答案

查看完整内容

很简单的问题,需要先关闭,然后才不会被占用,就能打开了,不过要再把打开的word关闭掉接下来的printf语句才会执行,当然了其实也可以把printf语句放在打开word之前也是行的 main() { FILE *tp; /*创建指针 用以新建记录输出数据的word文档*/ tp=fopen("D:\\tp.doc","w+"); /*创建记录word文档*/ fprintf(tp,"你好啊!!!"); fclose(tp); system ("D:\\tp.doc"); /*打开创建的word文档*/ print ...
沙发
发表于 2013-11-14 22:36:59 | 只看该作者
本帖最后由 河蟹 于 2013-11-16 14:20 编辑

很简单的问题,需要先关闭,然后才不会被占用,就能打开了,不过要再把打开的word关闭掉接下来的printf语句才会执行,当然了其实也可以把printf语句放在打开word之前也是行的
main()
{
FILE *tp;      /*创建指针  用以新建记录输出数据的word文档*/
tp=fopen("D:\\tp.doc","w+");           /*创建记录word文档*/
fprintf(tp,"你好啊!!!");
fclose(tp);
system ("D:\\tp.doc");          /*打开创建的word文档*/
printf ("你好啊!!!\n");
        system("pause");
        return 0;
}
板凳
发表于 2013-11-14 22:39:16 | 只看该作者
word文档又不是纯文本,这么做当然不行

1. 是不是有必要用word文档?
2. 理解第三方库这些概念吗?
地板
 楼主| 发表于 2013-11-15 08:21:36 | 只看该作者
rosynirvana 发表于 2013-11-14 22:39
word文档又不是纯文本,这么做当然不行

1. 是不是有必要用word文档?

你说的我都不大懂,不过这个文档要用,因为我需要输出的数据。现在也可以导到word文档里,就是那个提示符不结束,创建的word文档被占用而打不开,运行结束后手动是可以打开的,并且里面有相应的数据。你可以试着运行一下那个代码看看
5#
发表于 2013-11-15 08:32:17 | 只看该作者
hy0530 发表于 2013-11-15 08:21
你说的我都不大懂,不过这个文档要用,因为我需要输出的数据。现在也可以导到word文档里,就是那个提示符 ...

不,我的意思是,原始的输出数据真的有必要用word文档?
先写成纯文本,然后你再用word打开不是一样的?

然后,真的有必要实时查看输出?运行完之后再查看是不可以的?

或者描述一下最原始的需求?方便的话也可以把所有代码都贴上来……
6#
发表于 2013-11-15 09:12:15 | 只看该作者
rosynirvana 发表于 2013-11-15 08:32
不,我的意思是,原始的输出数据真的有必要用word文档?
先写成纯文本,然后你再用word打开不是一样的? ...

嗯嗯,楼主用XXX.txt不是更好吗
7#
 楼主| 发表于 2013-11-15 12:45:42 | 只看该作者
那你能帮我搞定吗?就我给出的那个,只要能自动把那个输出的“你好啊!!!”用别的文件记录下并能打开就行,我在这里先谢谢你了{:soso_e181:}
8#
发表于 2013-11-15 13:02:07 | 只看该作者
其实和你做的事情差不多
  1. #include <stdio.h>

  2. int main()
  3. {
  4.   FILE* fp = fopen("dummy.txt", "w");
  5.   fprintf(fp, "hello\n");
  6.   fflush(fp);
  7.   return 0;
  8. }
复制代码
在每次写入之后用fflush刷新流就可以了
如果你不要实时去看这个文件也可以不加
9#
 楼主| 发表于 2013-11-15 21:00:55 | 只看该作者
rosynirvana 发表于 2013-11-15 13:02
其实和你做的事情差不多在每次写入之后用fflush刷新流就可以了
如果你不要实时去看这个文件也可以不加

我需要的是这个程序自动打开dummy.txt文件,这样还是不能自动打开呀?
10#
发表于 2013-11-15 21:55:03 | 只看该作者
hy0530 发表于 2013-11-15 21:00
我需要的是这个程序自动打开dummy.txt文件,这样还是不能自动打开呀?

打开和你写的差不多
system(....)就行
因为不是跨平台的代码我没往上写……
11#
 楼主| 发表于 2013-11-15 23:15:08 | 只看该作者
rosynirvana 发表于 2013-11-15 21:55
打开和你写的差不多
system(....)就行
因为不是跨平台的代码我没往上写……

可是我就是这个不会啊,能不能帮帮我呢,就打开上面的那个txt文本
12#
 楼主| 发表于 2013-11-16 22:49:00 | 只看该作者
河蟹 发表于 2013-11-16 14:15
很简单的问题,需要先关闭,然后才不会被占用,就能打开了,不过要再把打开的word关闭掉接下来的printf语句 ...

嗯,问题完美解决了。真的非常的谢谢你,虽然学了很久了,还基本属于小白。以后有问题了还可以找你帮助解决吗?
13#
发表于 2013-11-17 17:11:25 | 只看该作者
hy0530 发表于 2013-11-16 22:49
嗯,问题完美解决了。真的非常的谢谢你,虽然学了很久了,还基本属于小白。以后有问题了还可以找你帮助解 ...

嘛,共同进步吧
14#
发表于 2013-11-19 09:30:41 | 只看该作者
河蟹 发表于 2013-11-17 17:11
嘛,共同进步吧







您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表