首页 > 用户发贴区 > 编程问题提问区 > 关于在试探DOC文件遇到的问题
2009
04-01

关于在试探DOC文件遇到的问题

今天我编写了一个程序!本来想试试用以下程序看看DOC文件里面到底装的什么东西!但是好象行不通呢?请问这样的程序怎么回试不通呢?


#include<iostream.h>
#include<stdio.h>
void main()
{
 char *c;
 int i;
 FILE *fp;
 fp=fopen(“d:\123.doc”,”rb”);   //我在DOC里面写的张三两个字;
 c=(char *)fp;
 cout<<”char=”;
 for(i=0;i<100;i++){cout<<c;c++;}  //按我的意思至少他会输出100字符啊;
 fclose(fp);
}


可以他一个字符都没输出就被强制关闭了???请问是什么原因关闭的?我可是一个字节一个字节的读写的啊?难道要一个位一个位的读写才行?那读出来不是0就是1了?这样的意思就不大了啊!


关于在试探DOC文件遇到的问题》有 3 条评论

  1. wxjwxjwkjl 说:

    我用自己存放的文件TXT的试了一下!发现可以访问啊?

    难道还有什么屏蔽技术不成????

  2. whos 说:

    DOC文件中存储字段和TXT文件存储字段不一样,C中定义的文件指针结构为:

    struct _iobuf {
            char *_ptr;
            int   _cnt;
            char *_base;
            int   _flag;
            int   _file;
            int   _charbuf;
            int   _bufsiz;
            char *_tmpfname;
            };
    typedef struct _iobuf FILE;

    但是DOC文件中的存储字段并不是这样的,你用C语言中定义的文件指针读取DOC文件肯定是不行的。

  3. wxjwxjwkjl 说:

    明白!~~了!~~

留下一个回复