如果用VC的话:CFile f;
CFileException e;
char* pFileName = "test.dat";
if( !f.Open( pFileName, CFile::modeCreate | CFile::modeWrite | CFile::typeBinary   , &e ) )
{
#ifdef _DEBUG
   afxDump << "File could not be opened " << e.m_cause << "\n";
#endif
}如果用TC的话:FILE *fp;
int result;/* Set "stdin" to have binary mode: */
result = _setmode( _fileno( stdin ), _O_BINARY );
if( result == -1 )
    perror( "Cannot set mode" );
else
printf( "'stdin' successfully changed to binary mode\n" );/* Open for write */
if( (fp= fopen( "data", "w+" )) == NULL )
    printf( "The file 'data' was not opened\n" );
else
    printf( "The file 'data' was opened\n" );

解决方案 »

  1.   

    电子工业出版社的VC++宝典里有很好的原代码!
    有直接COPY的代码!我在网吧,没带
      

  2.   

    bensilver老兄的代码没问题,不过在TC下我更愿意用_create,_open等等。但我觉得在VC下还不如用内存映象文件更快。
      

  3.   

    文件传输在时间要求不高的场合还是可以的,只是要注意在打开文件时要共享打开,在写数据时,要锁住数据。
    在window下用内存映射,管道传输要好的多,且写的代码并不多。
      

  4.   

    我比较同意wuchuncai先生的一些看法,但也有一些不同的见解。进行文件传输确实是在速度要求不高的地方采用,如果你传输文件的主要目的是为了共享数据的话,我比较喜欢采用文件映射方式或共享数据段的方式,而很少采用PIPE或DDE。因为我认为映射方式是比较新的方式,也是比较流行的,在以后的程序升级或移植上可能要方便些
      

  5.   

    谢谢各位仁兄对小弟的关心,我现在已经用TC编出了二进制文件读写的程序,请问各位,我现在在国外,手头上的资料实在太少,我想知道TC和VC之间的兼容性如何?可否将TC的代码直接写入VC中进行编译,我试着做过,有时候可行,有时则相反,还请明示!初学者的烦恼,见笑!
      

  6.   

    当然可以拉,VC中的控制台程序完全支持TC,现在国外还在用TC开发程序吗?你是搞单片机的吧
      

  7.   

    数据传递是要自动完成还是需要用户手工干预?
    文件方式适用后者,前者最好用socket