java 读取文件后,怎样判断它的真正的扩展名

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 读取文件后,怎样判断它的真正的扩展名相关的知识,希望对你有一定的参考价值。

如一个a.doc文件,我重命名为a.txt,那么怎样知道他的真正扩展名是.doc

参考技术A 除非要用代码分析文件格式,否则不太可能。

但是假设你只是处理少数几个特定类型的文件,比如doc, xls等的,可以用一些专用的java工具比如POI的读取一下,看抛出异常不,没有的就可以断定为该类型了。
参考技术B 文件扩展名只是一种标记,作为文件关联程序的判断;该信息只存在于文件名也只能从文件名里判断,无法从其他地方得知。当然,这种说法并不严格,不同类型的文件具有不同的数据组织方式,一些常见类型文件数据组织还是有规律可循的,可以尝试由此判定文件的真正类型。不过这种做这种判定需要一定的功底,不是很容易。本回答被提问者采纳 参考技术C a.doc文件重命名为a.txt之后,它就变成一个txt文件,这个过程并不备份之前扩展名
所以没法判定之前的扩展名是什么

java只能判定当前的文件扩展名
参考技术D 得到文件类型(contentType),文件名只是一个标识 第5个回答  2011-06-09 读文件头,不同的文件头格式不一样

PHP读取目录下所有文件

读取名为DD的目录下的所有文件(假设要写的这段PHP代码文件和DD在同一目录,不是在DD下哦)。注意:DD下还有几个子目录(比如有a,ab,aii,dec4个子目录,还有几个文本文件和DOC文件)。
读取所有文件后,取得文件名,文件路径,文件修改时间,文件的扩展名,在页面输出,最后用&分隔存入TXT文件。
我是新人,我已经按照上面的要求建好文件和目录了,需要可以运行出结果的代码。便于理解。
FILETYPE返回的是dir和file,dir是目录,file是文件,是判断是目录还是文件的吧,不是返回扩展名啊。

php中读取目录下的文件名的方式确实不少,最简单的是scandir,具体代码如下:
$dir="./目录名/";
$file=scandir($dir);
print_r($file);
参考技术A 1楼的不错,但是有点小BUG哦。
不过过滤应该在is_dir之后,不然连名字以.php结尾的目录也会被忽略掉。要记得目录名中是可以有点号的。
参考技术B 希望你下载个手册看看,上边有很多这种例子,手册里搜索readdir

以下来自手册:
function ls($dir, $mask /*.php$|.txt$*/)

static $i = 0;
$files = Array();
$d = opendir($dir);
while ($file = readdir($d))

if ($file == '.' || $file == '..' || eregi($mask, $file) ) continue;
if (is_dir($dir.'/'.$file))

$files += ls($dir.'/'.$file, $mask);
continue;

$files[$i++] = $dir.'/'.$file;

return $files;

$f = ls('E:/www/mymoney/lsdu', ".php$" /*no spaces*/);
//这里第二个参数代表不读取.php文件
2楼说的不错,不过有几个用.php等字符做文件夹的名字呢?
文件扩展名:请使用函数filetype 修改时间:filemtime
恩,我想错了
那你这样取:
在$files[$i++] = $dir.'/'.$file;这一行后边加上
$extend = pathinfo($file);
echo strtolower($extend["extension"]),'<br/>';本回答被提问者和网友采纳

以上是关于java 读取文件后,怎样判断它的真正的扩展名的主要内容,如果未能解决你的问题,请参考以下文章

java怎样将读取数据写入数据库

关于HSSFWorkbook读取excel文件的问题

java 程序打包为jar发布后,读取配置文件路径出错 ,怎样获取配置文件路径?

Winform怎样读取文本文件,并显示到datagridview

Winform怎样读取文本文件,并显示到datagridview

在写入文件时读取文件