用java如何以二进制的形式判断一个文件是pdf或word或excel?  
 
 请各位高手帮忙!!!!!!!!!!! 具体的文件打开函数有哪些?

解决方案 »

  1.   

    其实,每种格式的文件,都是一个所谓的“文件头”的概念,例如,realplayer是通过读取文件头来确定这个文件是不是它支持的格式,你把一个exe文件改后缀名为rm,用realplayer打开,程序会检测到这个不是rm文件的。用delphi,vc++都有专来的函数来取文件头的,但用java就没做过。但我可以给你一个方法,用一些比较二进制比较工作,比较两个pdf文件的二进制码,就可以找到它们相同的地方,其中相同的地方很可能就是文件头定义,然后你用FileInputStream,来读文件,读到相关的字符串,就可以认为是pdf文件了,具体的你自己试一下;。