java上传linux文件大小
这个一般我们在后台配置,比如你如果使用的是struts2框架,就可以在struts.xml中添加配置项:
<constant name="struts.multipart.maxSize" value="52428800" />
㈡ java上传文件到linux
1,问题引入
在linux下开发的上传模块,在windows下无法运行,提示找不到文件目录或文件
2,原因
主要是因为linux和windows下由于用到了绝对路径,而文件路径间隔符不一样导致的,,
3,解决方法
使用File.separator做文件间隔符,
注意:
在java中\t \a \b 等一般都有特别含义,所以文件路径为:
String str = C:\a.txt (1)
则如果直接创建文件
File file = new File(str); (2)
则在(1)中就会出错,
所以正确通用的的方法是:
String separator = File.separator;
String str1 = "C:"+separator+"a.txt"; (或者String str1 = "C:\\a.txt)
File file = new File(str1);
同理在linux下也是一样,,,
㈢ java编程:文件上传,,普通上传没有控件,怎么限制他的大小啊,比如上传文件不得超过10M,求大神
在后台action中判断,把上传的文件流用字节读出来,判断这个文件的字节流大小。然后根据自己的设置的最多进行判断,1kb=1024b
㈣ java 怎么获取上传文件的大小
用InputStream打开该文件。
InputStream in =new FileInputStream("sdf.txt");
int size=in.available()
得到了size就是你该文件的字节数
㈤ 怎么在java中向linux上传文件问题
分隔符window和linux的分隔符是不一样的,对于这些文件路径的分隔符,我建议使用: File.separator 例如一个路径是D盘的test文件夹这样表示: path = "D:"+File.separator+"test"+File.separator;
㈥ java ftp上传5G以上大文件,怎么做
java上传可以使用common-fileupload上传组件的。common-fileupload是jakarta项目组开发的一个功能很强大的上传文件组件下面先介绍上传文件到服务器(多文件上传):import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
import java.util.regex.*;
import org.apache.commons.fileupload.*;
public class upload extends HttpServlet {
private static final String CONTENT_TYPE = "text/html; charset=GB2312";
//Process the HTTP Post request
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType(CONTENT_TYPE);
PrintWriter out=response.getWriter();
try {
DiskFileUpload fu = new DiskFileUpload();
// 设置允许用户上传文件大小,单位:字节,这里设为2m
fu.setSizeMax(2*1024*1024);
// 设置最多只允许在内存中存储的数据,单位:字节
fu.setSizeThreshold(4096);
// 设置一旦文件大小超过getSizeThreshold()的值时数据存放在硬盘的目录
fu.setRepositoryPath("c:\\windows\\temp");
//开始读取上传信息
List fileItems = fu.parseRequest(request);
// 依次处理每个上传的文件
Iterator iter = fileItems.iterator();//正则匹配,过滤路径取文件名
String regExp=".+\\\\(.+)$";//过滤掉的文件类型
String[] errorType={".exe",".com",".cgi",".asp"};
Pattern p = Pattern.compile(regExp);
while (iter.hasNext()) {
FileItem item = (FileItem)iter.next();
//忽略其他不是文件域的所有表单信息
if (!item.isFormField()) {
String name = item.getName();
long size = item.getSize();
if((name==null||name.equals("")) && size==0)
continue;
Matcher m = p.matcher(name);
boolean result = m.find();
if (result){
for (int temp=0;temp if (m.group(1).endsWith(errorType[temp])){
throw new IOException(name+": wrong type");
}
}
try{//保存上传的文件到指定的目录//在下文中上传文件至数据库时,将对这里改写
item.write(new File("d:\\" + m.group(1))); out.print(name+" "+size+"
");
}
catch(Exception e){
out.println(e);
} }
else
{
throw new IOException("fail to upload");
}
}
}
}
catch (IOException e){
out.println(e);
}
catch (FileUploadException e){
out.println(e);
}
}
}
㈦ java上传文件到linux目录下
想把文件上传到Linux目录下,可以下载个SSH工具,用SSH工具可以把你想要上传的文件拖动到Linux目录下。Linux目录文件系统是以斜杠开头的,没有C盘D盘之分,比如/opt。
㈧ 在java上传文件时 怎么知道文件大小
publicstaticvoidgetFileSize(Stringpath){
//传入文件路径
Filefile=newFile(path);
//测试此文件是否存在
if(file.exists()){
//如果是文件夹
//这里只检测了文件夹中第一层如果有需要可以继续递归检测
if(file.isDirectory()){
intsize=0;
for(Filezf:file.listFiles()){
if(zf.isDirectory())continue;
size+=zf.length();
}
System.out.println("文件夹"+file.getName()+"Size:"+(size/1024f)+"kb");
}else{
System.out.println(file.getName()+"Size:"+(file.length()/1024f)+"kb");
}
//如果文件不存在
}else{
System.out.println("此文件不存在");
}
}
㈨ java 上传文件的大小是按什么单位的
byte.比如要上传一个3MB的文件,SmartUpload.setMaxFileSize(3*1024*1024);
㈩ 如何用java获取linux下某文件夹的大小
javacode如下:import java.io.*; class dirlen { static long dirlength;//保存目录大小的变量 static void sdl(String dirname) { File dir=new File(dirname); System.out.println(dirname); String f[]=dir.list(); File f1; for(int i=0;i<f.length;i++) { f1 = new File (dirname+"/"+f[i]); if (!f1.isDirectory()) dirlength+=f1.length(); else sdl(dirname+"/"+f[i]);//如果是目录,递归调用 } } public static void main(String args[]) { if(args.length!=1)//判断是否只带一个参数,参数是目录名 { System.out.println("Parameter error!"); System.exit(0); } dirlength=0; String dirname=args[0]; File dir=new File(dirname); if(dir.isDirectory())//判断是否是目录,如果不是退出程序 { sdl(dirname);//计算目录大小 System.out.println("Length is "+dirlength+" bytes."); } else System.out.println(dir+" isn't a directory!"); } }