java 判断文件类型 5
java能否根据文件内容来判断文件类型为二进制文件还是文本文件千万别回答根据文件后缀名的方法,扩展名可以改的。...
java 能否根据文件内容来判断文件类型为二进制文件还是文本文件 千万别回答根据文件后缀名的方法,扩展名可以改的。
展开
4个回答
展开全部
package com.test;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class Ch2 {
private static final String RAGEX="[0x00-0x07]";
public static void main(String[] args) throws IOException {
File file=new File("c:/abc");
File[] files=file.listFiles();
for(int i=0;i<files.length;i++){
System.out.println(files[i].getName()+"\t"+getCheck(files[i]));
}
}
public static boolean getCheck(File f) throws IOException{
BufferedReader br=new BufferedReader(new FileReader(f));
String temp="";
while((temp=br.readLine())!=null){
for(int i=0;i<temp.length();i++){
if((temp.charAt(i)+"").matches(RAGEX)){
return true;
}
}
}
br.close();
return false;
}
}
//c:/abc是文件目录.里面可以随意放几个文件.但不要有文件夹.没做验证.
//根据楼上所说解答.分给楼上就行了,谢谢楼上!
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
public class Ch2 {
private static final String RAGEX="[0x00-0x07]";
public static void main(String[] args) throws IOException {
File file=new File("c:/abc");
File[] files=file.listFiles();
for(int i=0;i<files.length;i++){
System.out.println(files[i].getName()+"\t"+getCheck(files[i]));
}
}
public static boolean getCheck(File f) throws IOException{
BufferedReader br=new BufferedReader(new FileReader(f));
String temp="";
while((temp=br.readLine())!=null){
for(int i=0;i<temp.length();i++){
if((temp.charAt(i)+"").matches(RAGEX)){
return true;
}
}
}
br.close();
return false;
}
}
//c:/abc是文件目录.里面可以随意放几个文件.但不要有文件夹.没做验证.
//根据楼上所说解答.分给楼上就行了,谢谢楼上!
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2015-10-13 · 知道合伙人互联网行家
关注
展开全部
简单实现如下:
import java.io.*;
/*通常用在从客户到服务端传送的判断
先用getName()获得文件的名字,这个市File的自带方法。然后那名字给一个String对象,用下面的方法得到文件的扩展名。
*/
public class Rename{
public String getTypeName(String s){
String s1=s.substring(s.indexOf(".")+1,s.length());
if(s1.indexOf(".")>=0){
s=s1;
Rename sf=new Rename();
s=sf.getTypeName(s);
}
return s.substring(s.indexOf("."),s.length());
}
}
import java.io.*;
/*通常用在从客户到服务端传送的判断
先用getName()获得文件的名字,这个市File的自带方法。然后那名字给一个String对象,用下面的方法得到文件的扩展名。
*/
public class Rename{
public String getTypeName(String s){
String s1=s.substring(s.indexOf(".")+1,s.length());
if(s1.indexOf(".")>=0){
s=s1;
Rename sf=new Rename();
s=sf.getTypeName(s);
}
return s.substring(s.indexOf("."),s.length());
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一楼正解了
自己动手弄吧
自己动手弄吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询