导航:首页 > 编程语言 > java文件头文件类型files

java文件头文件类型files

发布时间:2024-06-24 12:10:14

java 传输 获取文件类型

获取文件类型,一般的是列出目前所有的文件类型,根据表头进行相应判断,示例如下:

/**
*件头是位于文件开头的一段承担一定任务的数据,一般都在开头的部分。
*头文件作为一种包含功能函数、数据接口声明的载体文件,用于保存程序的声明(declaration),而定义文件用于保存程序的实现(implementation)。
*为了解决在用户上传文件的时候在服务器端判断文件类型的问题,故用获取文件头的方式,直接读取文件的前几个字节,来判断上传文件是否符合格式。具体代码如下:
*Java代码:
*
*/
packagecom.yonyou.sud.file;
importjava.io.FileInputStream;
importjava.io.IOException;
importjava.util.HashMap;
/**
*获取和判断文件头信息
*
*@authorSud
*
*/
publicclassGetTypeByHead{
//缓存文件头信息-文件头信息
publicstaticfinalHashMap<String,String>mFileTypes=newHashMap<String,String>();
static{
//images
mFileTypes.put("FFD8FF","jpg");
mFileTypes.put("89504E47","png");
mFileTypes.put("47494638","gif");
mFileTypes.put("49492A00","tif");
mFileTypes.put("424D","bmp");
//
mFileTypes.put("41433130","dwg");//CAD
mFileTypes.put("38425053","psd");
mFileTypes.put("7B5C727466","rtf");//日记本
mFileTypes.put("3C3F786D6C","xml");
mFileTypes.put("68746D6C3E","html");
mFileTypes.put("44656C69766572792D646174653A","eml");//邮件
mFileTypes.put("D0CF11E0","doc");
mFileTypes.put("5374616E64617264204A","mdb");
mFileTypes.put("252150532D41646F6265","ps");
mFileTypes.put("255044462D312E","pdf");
mFileTypes.put("504B0304","docx");
mFileTypes.put("7221","rar");
mFileTypes.put("57415645","wav");
mFileTypes.put("41564920","avi");
mFileTypes.put("2E524D46","rm");
mFileTypes.put("000001BA","mpg");
mFileTypes.put("000001B3","mpg");
mFileTypes.put("6D6F6F76","mov");
mFileTypes.put("3026B2758E66CF11","asf");
mFileTypes.put("4D546864","mid");
mFileTypes.put("1F8B08","gz");
}
/**
*根据文件路径获取文件头信息
*
*@paramfilePath
*文件路径
*@return文件头信息
*/
publicstaticStringgetFileType(StringfilePath){
System.out.println(getFileHeader(filePath));
System.out.println(mFileTypes.get(getFileHeader(filePath)));
returnmFileTypes.get(getFileHeader(filePath));
}
/**
*根据文件路径获取文件头信息
*
*@paramfilePath
*文件路径
*@return文件头信息
*/
(StringfilePath){
FileInputStreamis=null;
Stringvalue=null;
try{
is=newFileInputStream(filePath);
byte[]b=newbyte[4];
/*intread()从此输入流中读取一个数据字节。
*intread(byte[]b)从此输入流中将最多b.length个字节的数据读入一个byte数组中。
*intread(byte[]b,intoff,intlen)从此输入流中将最多len个字节的数据读入一个byte数组中。
*/
is.read(b,0,b.length);
value=bytesToHexString(b);
}catch(Exceptione){
}finally{
if(null!=is){
try{
is.close();
}catch(IOExceptione){
}
}
}
returnvalue;
}
/**
*将要读取文件头信息的文件的byte数组转换成string类型表示
*
*@paramsrc
*要读取文件头信息的文件的byte数组
*@return文件头信息
*/
(byte[]src){
StringBuilderbuilder=newStringBuilder();
if(src==null||src.length<=0){
returnnull;
}
Stringhv;
for(inti=0;i<src.length;i++){
//以十六进制(基数16)无符号整数形式返回一个整数参数的字符串表示形式,并转换为大写
hv=Integer.toHexString(src[i]&0xFF).toUpperCase();
if(hv.length()<2){
builder.append(0);
}
builder.append(hv);
}
System.out.println(builder.toString());
returnbuilder.toString();
}
publicstaticvoidmain(String[]args)throwsException{
finalStringfileType=getFileType("E:/Java编程思想读书笔记.docx");
System.out.println(fileType);
}
}

Ⅱ Java的File类有没有修改文件属性和判断后缀名的方法~~~

只能实现FileFilter接口的accept方法把不需要的文件过滤掉,你无法在java中把隐藏文件变成不隐藏的,但是据说可以把不隐藏的弄成隐藏的,这个我试过,没有成功.
最主要的原因是修改文件属性都是通过java.security包下的类去和系统内部打交道,他对外一般不暴露这样的方法的.我估计lz是做什么东西需要写配置文件吧,不想让用户看到配置文件,给你个建议,把配置文件写到头文件里去

Ⅲ 在JAVA中如何得到一个文件,文件夹的创建时间

能不能换个思路~~~汗啊~!好像用java的函数只能取得lastModified()有一个比较笨的方法
Process p=Runtime.getRuntime().exec("dir startup.bat /t -c");
然后取得p的输出信息就可以得到创建时间了!上面的例子我是得到tomcat的startup.bat这个文件的创建时间,如果你想得到其它文件的创建时间就可以将startup.bat换成其它文件名!study and mark ^_^如果用dir, 取得创建时间的参数是/TC路过学习ing帮您顶java是用native来获取操作系统的支持,从而对文件进行操作。
具体实现类是
java.io.FileSystem
这个类是私有的只能在jdk内部使用,由于这个类没有提供文件时间创建的接口,你也就没有办法用纯java来获得这一个功能(但愿不是这样)。
有一个简单的方法是自己调用系统函数,或者干脆调用各C函数
先写各本地类访问方法
class MyFileSystem{
public native void getCreatFileTime(File f);static {System.loadLibrary(" ");}
public static void main(String[] args) {
new HelloWorld().getCreatFileTime();}}编译本文件然后执行 javah,便会自动产生头文件 MyFileSystem.h
函数的具体实现如下:
#include
#include "MyFileSystem.h"
#include
JNIEXPORT double JNICALL
Java_MyFileSystem_displayHelloWorld(JNIEnv *env, jobject obj){//在这里调用C函数
double time=getFileCreatTime_IN_C(obj)
return time;}高手如云,我心忐忑
奋发图强~高手如云,我心忐忑奋发图强~me too,高手如云,我心忐忑奋发图强~me too,too还有可以复制java.io.FileSystem及相关类的源代码,把所有东西成public的,这样总可以用了吧,
当然把类名也改掉。。。。。顶!
Study!Up!!!顶一下!
支持upFile f = new File("d:\\a.txt");
Date date = new Date();
long L = date.getTime();
f.setLastModified(L);
以上个函数可以设置文件的最后修改时间,以及设置文件为“只读”属性顶!!!

Ⅳ C语言头文件和 Java的的包是什么,有什么用

1、c语言的头文件定义了许多函数和许多设定,不如int ,char,double,float等,还有许多函数,比如math()等,引入头文件就可以直接调用头文件已经定义好的函数。

2、java的包和C的头文件相似,但是java的包定义了许多类,我们可以直接调用java的类就不用自己定义了。

引入头文件的包可以节省开发时间和提高效率。如果头文件和包没有则我们需要自己定义或者自己写一个类。

Ⅳ 编写java代码来实现每种文件的文件头长啥样

真心没看明白,是指用java代码读文件头?每种文件的文件头是不一样的,譬如文本文件一般没文件头,而象doc文件、xls文件、exe文件、dll文件等都有自己的文件格式,也就有自己的文件头。
java读文件有2种方式,一种叫输入流,另一种就是随机访问,你这个用流就可以了。
InputStream in = new BufferedInputStream(new FileInputStream(文件名));
byte[] buf = new byte[4096];
int len = 0;
while( (len=in.read(buf)>=0 ) {
处理数据
}
in.close();

Ⅵ java的头文件大概是什么意思 public static void main(String[] args) 来个人解释一下

public static void main(String[] args)
public表示该方法是共有的,static表名方法是静态的,

main是java程序的入口,程序从main方法开始运行,String【】 args 是在java运行的过程中可以从命令行传入的参数:
cmd中javac hello.java
java hello xx yy cc
其中xx yy cc就是程序运行的时候传入的参数:args【0】,args【1】,args【3】。

Ⅶ Java编程的特点是什么呢

Java编程的特点是什么呢?

Java由美国SUN公司(被oracle公司收购)发明于年,是目前业界应用最广泛、使用人数最多的语言,连续多年排名世界第一,可以称之为“计算机语言界的英语”。

那么Java这么高的评价它的特点有哪些,下面我来为题主解答:

一、跨平台/可移植性

这是Java的核心优势。Java在设计时就很注重移植和跨平台性。比如:Java的int永远都是32位。不像C++可能是16,32,可能是根据编译器厂商规定的变化。这样的话程序的移植就会非常麻烦。

Java首先利用文本编辑器编写 Java源程序,源文件的后缀名为.java;再利用编译器(javac)将源程序编译成字节码文件,字节码文件的后缀名为.class; 最后利用虚拟机(解释器,java)解释执行。如下图所示:

二、安全性

Java适合于网络/分布式环境,为了达到这个目标,在安全性方面投入了很大的精力,使Java可以很容易构建防病毒,防篡改的系统。比如Java取消了强大但又危险的指针。由于指针可进行移动运算,指针可随便指向一个内存区域,而不管这个区域是否可用,这样做是危险的。

三、面向对象

面向对象是一种程序设计技术,非常适合大型软件的设计和开发。由于C++为了照顾大量C语言使用者而兼容了C,使得自身仅仅成为了带类的C语言,多少影响了其面向对象的彻底性!Java则是完全的面向对象语言。

四、简单性

Java就是C++语法的简化版,我们也可以将Java称之为“C++-”。跟我念“C加加减”,指的就是将C++的一些内容去掉;比如:头文件,指针运算,结构,联合,操作符重载,虚基类等等。同时,由于语法基于C语言,因此学习起来完全不费力。

五、高性能

Java最初发展阶段,总是被人诟病“性能低”;客观上,高级语言运行效率总是低于低级语言的,这个无法避免。Java语言本身发展中通过虚拟机的优化提升了几十倍运行效率。比如,通过JIT(JUST IN TIME)即时编译技术提高运行效率。 将一些“热点”字节码编译成本地机器码,并将结果缓存起来,在需要的时候重新调用。这样的话,使Java程序的执行效率大大提高,某些代码甚至接近C++的效率。

因此,Java低性能的短腿,已经被完全解决了。业界发展上,我们也看到很多C++应用转到Java开发,很多C++程序员转型为Java程序员。

六、分布式

Java是为Internet的分布式环境设计的,因为它能够处理TCP/IP协议。事实上,通过URL访问一个网络资源和访问本地文件是一样简单的。Java还支持远程方法调用(RMI,Remote Method Invocation),使程序能够通过网络调用方法。

七、多线程

多线程的使用可以带来更好的交互响应和实时行为。 Java多线程的简单性是Java成为主流服务器端开发语言的主要原因之一。

八、健壮性

Java是一种健壮的语言,吸收了C/C++ 语言的优点,但去掉了其影响程序健壮性的部分(如:指针、内存的申请与释放等)。Java程序不可能造成计算机崩溃。即使Java程序也可能有错误。如果出现某种出乎意料之事,程序也不会崩溃,而是把该异常抛出,再通过异常处理机制加以处理。

以上几种特性你了解到啦吗? 记得给个赞!

Ⅷ .h格式的是什么文件

*.H 是C语言或JAVA类、复函数的头文件(制Head)。

在C语言家族程序中,头文件被大量使用。一般而言,每个C++/C程序通常由头文件(header files)和定义文件(definition files)组成。头文件作为一种包含功能函数、数据接口声明的载体文件,主要用于保存程序的声明(declaration),而定义文件用于保存程序的实现 (implementation)。 .c就是你写的程序文件。

Ⅸ java如何判断一个文件夹是否存在

1、首先在电脑端新建一个java项目,如图,命名为javaFileTest名称。

阅读全文

与java文件头文件类型files相关的资料

热点内容
刷机时数据线插台式电脑哪里 浏览:432
手机qq怎样隐身登陆 浏览:339
cdelete导致程序崩溃 浏览:783
小米4手机设置铃声在哪个文件夹里 浏览:184
linuxnet论坛源码下载 浏览:241
手机修改文件后缀名 浏览:32
jsvideofullscreen 浏览:120
梦幻模拟战1修改代码 浏览:928
cad有nc编程功能吗怎么用 浏览:573
js调用外部js 浏览:273
苹果手机照片后期软件 浏览:333
linux自动备份oracle数据库 浏览:447
ios重启app的代码 浏览:565
装了win10文件加锁打不开 浏览:713
苹果电脑怎么新建一个pdf的文件 浏览:379
wps显示word不是一个有效文件 浏览:48
凯立德地图升级工具 浏览:474
linux系统参看log 浏览:416
用手机设置无线密码是多少 浏览:829
销售季度绩效考核怎么体现数据 浏览:335

友情链接