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

java获取上传的文件

发布时间: 2023-05-20 02:44:02

㈠ 如何用java读取客户端上传的rar文件

直接通过工具类进行解压或者压缩文件即可。

import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.Closeable;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.zip.ZipEntry;
import java.util.zip.ZipFile;

/**
*
* @author gdb
*/
public class ZipUtilAll {
public static final int DEFAULT_BUFSIZE = 1024 * 16;

/**
* 解压Zip文件
*
* @param srcZipFile
* @param destDir
* @throws IOException
*/
public static void unZip(File srcZipFile, String destDir) throws IOException
{
ZipFile zipFile = new ZipFile(srcZipFile);
unZip(zipFile, destDir);
}

/**
* 解压Zip文件
*
* @param srcZipFile
* @param destDir
* @throws IOException
*/
public static void unZip(String srcZipFile, String destDir) throws IOException
{
ZipFile zipFile = new ZipFile(srcZipFile);
unZip(zipFile, destDir);
}

/**
* 解压Zip文件
*
* @param zipFile
* @param destDir
* @throws IOException
*/
public static void unZip(ZipFile zipFile, String destDir) throws IOException
{
Enumeration<? extends ZipEntry> entryEnum = zipFile.entries();
ZipEntry entry = null;
while (entryEnum.hasMoreElements()) {
entry = entryEnum.nextElement();
File destFile = new File(destDir + entry.getName());
if (entry.isDirectory()) {
destFile.mkdirs();
}
else {
destFile.getParentFile().mkdirs();
InputStream eis = zipFile.getInputStream(entry);
System.out.println(eis.read());
write(eis, destFile);
}
}
}

/**
* 将输入流中的数据写到指定文件
*
* @param inputStream
* @param destFile
*/
public static void write(InputStream inputStream, File destFile) throws IOException
{
BufferedInputStream bufIs = null;
BufferedOutputStream bufOs = null;
try {
bufIs = new BufferedInputStream(inputStream);
bufOs = new BufferedOutputStream(new FileOutputStream(destFile));
byte[] buf = new byte[DEFAULT_BUFSIZE];
int len = 0;
while ((len = bufIs.read(buf, 0, buf.length)) > 0) {
bufOs.write(buf, 0, len);
}
} catch (IOException ex) {
throw ex;
} finally {
close(bufOs, bufIs);
}
}

/**
* 安全关闭多个流
*
* @param streams
*/
public static void close(Closeable... streams)
{
try {
for (Closeable s : streams) {
if (s != null)
s.close();
}
} catch (IOException ioe) {
ioe.printStackTrace(System.err);
}
}

/**
* @param args
* @throws java.lang.Exception
*/
public static void main(String[] args) throws Exception
{
// unZip(new File(ZipDemo.class.getResource("D:/123/HKRT-B2B.zip").toURI()), "D:/123/");
unZip("D:/123/123.zip", "D:/123/");
// new File();
}
}

㈡ java怎么获取上传文件的后缀

给你个示例,应该看得懂吧
File f =new File("Test.txt");
String fileName=f.getName();
String prefix=fileName.substring(fileName.lastIndexOf(".")+1);
System.out.println(prefix);
}

㈢ java 怎么获取上传文件的大小

用InputStream打开该文件。
InputStream in =new FileInputStream("sdf.txt");
int size=in.available()
得到了size就是你该文件的字节数

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

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

㈤ java怎么读取上传的excel文件

java怎么读取上传的excel文件,解决办法:

  1. 添加jar文件,java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。

  2. jxl对Excel表格的认识,每个单元格的位置认为是由一个二维坐标(i,j)给定,其中i表示列,如岁j表示行,并且从上到下递增,从左到右递增。

  3. 对于合并单元格的以最左,最上的单元格的坐标为准。如下图中t.xls,一班名单(0,0),陈茵(1,2),陈开先(1,6)。

4.java代码对t.xls的读取


㈥ java怎么获取上传文件的路径

java文件中获得路径
Thread.currentThread().getContextClassLoader().getResource("") //获得资源文件(.class文件)所在路径
ClassLoader.getSystemResource("")
Class_Name.class.getClassLoader().getResource("")
Class_Name.class .getResource("/")
Class_Name.class .getResource("") // 获得当前类所在路径
System.getProperty("user.dir") // 获得项目根目录的绝对路径
System.getProperty("java.class.path") //得到类路径和包路径
打印输出依次如下:
file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/
file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/
file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/
file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/
file:/F:/work_litao/uri_test/WebContent/WEB-INF/classes/com/xml/imp/
F:\work_litao\uri_test
F:\work_litao\uri_test\WebContent\WEB-INF\classes;F:\work_litao\uri_test\WebContent\WEB-INF\lib\dom4j.jar
2、 JSP中获得当前应用的相对路径和绝对路径
根目录所对应的绝对路径:request.getRequestURI()
文件的绝对路径 :application.getRealPath(request.getRequestURI());
当前web应用的绝对路径 :application.getRealPath("/");
取得请求文件的上层目录:new File(application.getRealPath(request.getRequestURI())).getParent()

㈦ java如何获取jsp页面上传的文件路径

java文件中获得路径 ThreadcurrentThread()getContextClassLoader()getResource("") //获得资源文件(class文件)所在路径 ClassLoadergetSystemResource("") Class_NameclassgetClassLoader()getResource("") Class_Nameclass getResoujava如何获取jsp页面上传的文件路径

㈧ java怎么获取上传文件的路径

可以通过changeWorkingDirectory方法切换上传路径来进行文件上传。 上传方法举例: /** * 上传文件 * * @param fileName * @param plainFilePath 文件路径路径 * @param filepath * @return * @throws Exception */ public static String fileU

㈨ java request 怎么查上传文件

<form action="uploadURL" method="post" enctype="multipart/form-data"明坦>
标题:<input type="text" name="tit" /><br/>
内容:<input type="text" name="te" /><br/>
图片1:<input type="file" name="img1"/><br/>
图片2:<input type="file" name="img2"/><br/>
<input type="submit" value="提交">
</form>
//创建硬盘文件工厂对象,设置上传的缓存区大小和临时文件
DiskFileItemFactory disk=new DiskFileItemFactory();

//实例化servlet上传的对象,把表单的数据都放在这个对象中
ServletFileUpload up=new ServletFileUpload(disk);
List<FileItem> list=up.parseRequest(request);
//由于list中有普通表单和非普通表单 所以给定两拿族个集合
Map<String,String> map=new HashMap<String, String>();

for(int i=0;i<list.size();i++){
FileItem item=list.get(i); //获取表单的数据
if(item.isFormField()){//判断该数据属否是普通表单的数据
//获取普通表单的数据
String namename=item.getFieldName(); //获取表单的名
String formvalue=item.getString(); //获取输出的值

String value=new String(formvalue.getBytes("ISO-8859-1"),"utf-8"); //给获取的值 设置编码
//把普通激敏桐表单的数据放入map中
map.put(namename, value);
}else{
//非普通
String filename=item.getName(); ////获取文件名的名

//获取服务器上upload的地址
String rootpath=getServletContext().getRealPath("upload");
//获取文件的路径
String newpath=rootpath+"\\"+filename;
//写入文件
item.write(new File(newpath));
li.add(filename);

}
}

㈩ java怎样获取上传文件真实路径

可以通过changeWorkingDirectory方法切换上传路径来进行文件上传。
上传方法举例:
/**
* 上传文件
*
* @param fileName
* @param plainFilePath 文件路径路径
* @param filepath
* @return
* @throws Exception
*/
public static String fileUploadByftp(String plainFilePath, String fileName, String filepath) throws Exception {
FileInputStream fis = null;
ByteArrayOutputStream bos = null;
FTPClient ftpClient = new FTPClient();
String bl = "false";
try {
fis = new FileInputStream(plainFilePath);
bos = new ByteArrayOutputStream(fis.available());
byte[] buffer = new byte[1024];
int count = 0;
while ((count = fis.read(buffer)) != -1) {
bos.write(buffer, 0, count);
}
bos.flush();
Log.info("加密上传文件开始");
Log.info("连接远程上传服务器"+CCFCCBUtil.CCFCCBHOSTNAME+":"+22);
ftpClient.connect(CCFCCBUtil.CCFCCBHOSTNAME, 22);
ftpClient.login(CCFCCBUtil.CCFCCBLOGINNAME, CCFCCBUtil.CCFCCBLOGINPASSWORD);
FTPFile[] fs;
fs = ftpClient.listFiles();
for (FTPFile ff : fs) {
if (ff.getName().equals(filepath)) {
bl="true";
ftpClient.changeWorkingDirectory("/"+filepath+"");
}
}
Log.info("检查文件路径是否存在:/"+filepath);
if("false".equals(bl)){
ViewUtil.dataSEErrorPerformedCommon( "查询文件路径不存在:"+"/"+filepath);
return bl;
}
ftpClient.setBufferSize(1024);
ftpClient.setControlEncoding("GBK");
// 设置文件类型(二进制)
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
ftpClient.storeFile(fileName, fis);
Log.info("上传文件成功:"+fileName+"。文件保存路径:"+"/"+filepath+"/");
return bl;
} catch (Exception e) {
throw e;
} finally {
if (fis != null) {
try {
fis.close();
} catch (Exception e) {
Log.info(e.getLocalizedMessage(), e);
}
}
if (bos != null) {
try {
bos.close();
} catch (Exception e) {
Log.info(e.getLocalizedMessage(), e);
}
}
}
}
备注:只需要修改上传的服务器地址、用户名、密码即可进行服务器访问上传。根据实际需要修改即可。

热点内容
易语言问道源码 发布:2025-02-09 12:59:03 浏览:661
ip和服务器有关吗 发布:2025-02-09 12:51:26 浏览:950
极光免费脚本 发布:2025-02-09 12:50:33 浏览:394
c存储过程返回结果集 发布:2025-02-09 12:42:00 浏览:150
gs哪个配置性价比高 发布:2025-02-09 12:35:57 浏览:283
java栈数组 发布:2025-02-09 12:33:37 浏览:557
php上传文件form 发布:2025-02-09 12:33:31 浏览:157
冠道如何选择配置 发布:2025-02-09 12:20:21 浏览:971
为什么安卓手机wearpro搜不到手表 发布:2025-02-09 12:16:07 浏览:671
服务器安全怎么做 发布:2025-02-09 12:08:08 浏览:485