当前位置:首页 » 文件管理 » java文件上传获取后缀名

java文件上传获取后缀名

发布时间: 2022-03-07 23:04:27

Ⅰ bootstrap FileInput图片上传如何在java中获取图片的名字,大小,以及如何存储在制定文件夹

后台获取到文件了么File.getName就是文件名了

这个方法就是保存文件用的了 调用saveFile(file.getInputStrean,file.getName);

privatevoidsaveFile(InputStreaminputStream,StringfileName){

OutputStreamos=null;try{
Stringpath="D:\testFile\";//2、保存到临时文件//1K的数据缓冲
byte[]bs=newbyte[1024];//读取到的数据长度
intlen;//输出的文件流保存到本地文件
FiletempFile=newFile(path);if(!tempFile.exists()){
tempFile.mkdirs();
}
os=newFileOutputStream(tempFile.getPath()+File.separator+fileName);//开始读取
while((len=inputStream.read(bs))!=-1){
os.write(bs,0,len);
}

}catch(IOExceptione){
e.printStackTrace();
}catch(Exceptione){
e.printStackTrace();
}finally{//完毕,关闭所有链接
try{
os.close();
inputStream.close();
}catch(IOExceptione){
e.printStackTrace();
}
}
}

Ⅱ 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 f =new File("Test.txt");
String fileName=f.getName();
String prefix=fileName.substring(fileName.lastIndexOf(".")+1);
System.out.println(prefix);
}

Ⅳ java中已知request如何获得上传文件的文件名

file.getOriginalFilename

Ⅳ Java中,获得同名file的文件名称和内容并上传附件,请问老师怎么实现的

这个你可以这样实现,你在页面写一个<input
type="hidden"
name="files"
id="files">,然后在你选择文件的时候,每选择一个,就把这个文件的名字加到这个files中,用,号隔开,这样就会有一个files=filename1,filenam2,filename3,filename4
这样你在后台获取files,然后用,号分割,就可以获取每个附件了
多个附件上传就是这样做的

Ⅵ java文件上传如何获取上传文件的字符集编码

你可以在上传的时候,转成bytes,这样获得的是无编码的,下载的时候,他就可以制定编码进行显示!

Ⅶ java 如何通过 FileInputStream 获取文件名、文件属性的求助

不可以。FileInputStream的父类是InputStream。也就是说,它其实是一个“流”而不是文件。

Ⅷ JAVA如何获取上传后的文件名

这里的upload就是你web服务器根目录下的一个目录,是放置上传文件的目录,而文件名是这个方法生成的its.getIPTimeStampRand(),据判断应该是根据客户端IP加上时间戳生成的唯一值,最后文件的后缀名是item.getName().split("\\.")[1],你可以去upload目录就能看到。

Ⅸ java 上传ftp 传输过程中文件名为tmp后缀 如何实现

replace("tmp", "") <----字符替换

Ⅹ java spring 怎么获取上传的文件名

action里面定义一个属性,属性的名字是固定的,具体叫什么我忘了,一个是fileName,一个是File类型的file,还有个好像是fileContentType,你网络下就知道了

热点内容
编程好软件 发布:2025-01-16 20:38:07 浏览:423
流量密码如何改成 发布:2025-01-16 20:37:13 浏览:50
java判断是否是对象 发布:2025-01-16 20:31:04 浏览:885
python调用外部程序 发布:2025-01-16 20:14:09 浏览:397
缓解压力英语作文 发布:2025-01-16 20:13:31 浏览:65
javaname 发布:2025-01-16 20:13:15 浏览:22
用户访问表空间 发布:2025-01-16 20:07:07 浏览:944
java代码自动编译 发布:2025-01-16 19:58:14 浏览:314
编程很困难 发布:2025-01-16 19:58:09 浏览:674
gg登录源码 发布:2025-01-16 19:58:07 浏览:293