java文件流上传文件
1.下载简单,无非是把服务器上的文件或者数据库中的BLob(或其他二进制型),用流读出来,然后写到客户端即可,要注意 ContentType。
2.上传,可以用Apache Commons Upload等开源工具,或者自己写:
form要用enctype="multipart/form-data"
然后服务器端也是用IO把客户端提交的文件流读入,然后写到服务器的文件系统或者数据库里。不同的数据库对Lob字段操作可能有所不同,建议用Hibernate,JPA等成熟的ORM框架,可以不考虑数据库细节。
Ⅱ java如何实现文件上传
public static int transFile(InputStream in, OutputStream out, int fileSize) {
int receiveLen = 0;
final int bufSize = 1000;
try {
byte[] buf = new byte[bufSize];
int len = 0;
while(fileSize - receiveLen > bufSize)
{
len = in.read(buf);
out.write(buf, 0, len);
out.flush();
receiveLen += len;
System.out.println(len);
}
while(receiveLen < fileSize)
{
len = in.read(buf, 0, fileSize - receiveLen);
System.out.println(len);
out.write(buf, 0, len);
receiveLen += len;
out.flush();
}
} catch (IOException e) {
// TODO 自动生成 catch 块
e.printStackTrace();
}
return receiveLen;
}
这个方法从InputStream中读取内容,写到OutputStream中。
那么发送文件方,InputStream就是FileInputStream,OutputStream就是Socket.getOutputStream.
接受文件方,InputStream就是Socket.getInputStream,OutputStream就是FileOutputStream。
就OK了。 至于存到数据库里嘛,Oracle里用Blob。搜索一下,也是一样的。从Blob能获取一个输出流。
Ⅲ java实现文件上传,代码尽量简洁~~~~~·
你说的2种方法都是很简单的,参考网上的资料都不难做出,用io流做更是基础中的基础,我说下smartupload好了,有的人是直接写在jsp上面,感觉比较乱,我一般都是写在action里面,打好jar包和配置后
SmartUpload mySmartUpload = new SmartUpload();
//如果是struts2.0或者webwork 则是mySmartUpload.initialize(ServletActionContext.getServletConfig(),ServletActionContext.getRequest(),ServletActionContext.getResponse());
mySmartUpload.initialize(servlet.getServletConfig(), request,response);
mySmartUpload.setTotalMaxFileSize(500000);
//如果上传任意文件不设置mySmartUpload.setAllowedFilesList(文件后缀名)就可以了
mySmartUpload.upload();
for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++) {
com.jspsmart.upload.File file = mySmartUpload.getFiles().getFile(i);
if (file.isMissing()) continue;
file.saveAs(保存的地址 + file.getFileName(),
su.SAVE_PHYSICAL);
Ⅳ java上传文件大小限制(java上传文件大小限制怎么解决)
java类中如何控制用户上传的图片大小不能超过100k-CSDN论坛ErrMsg=ErrMsg+ 图片文件大小超过限制。
*1024也就是100K你如果要大的话把100变大就好了。
照片超过100K在上传时要求小鱼100K,可以通过photoshop软件来进行调整。在PS软件中打开该图片重新进行保存时,将图片大小设置为小于一定的大小即可。
用JAVA基于FtpClient类开发时有没有对上传文件时发送数据大小的限制的接...把JAVA压缩,用文件分割工具,分割成多个小压缩包,再一个一个上传到FTP。
在后台action中判断,把上传的文件流用字节读出来,判断这个文件的字节流大小。
setBufferSize():设置将发送到客户端的数据的缓冲区大小.根据你本地存贮大小进行填写吧。
sun.net..,该类库主要提供了用于建立FTP连接的类。利用这些类的方法,编程人员可以远程登录到FTP服务器,列举该服务器上的目录,设置传输协议,以及传送文件。
java上传和下载的文件大小不同
1、不算。。windows系统的文件判断和java中文件大小判断不一样。。windows中文件大小不足1kb有可能会显示为1kb但是java中如果是int类型很可能只会显示0KB0字节不代表没有该文件,比如空文件这个就很正常了。
2、在后台action中判断,把上传的文件流用字节读出来,判断这个文件的字节流大小。
3、publicvoidwrite(byte[]b)throwsIOException向输入流里写入一个字节数组b。
在Java中,文件上传时怎样判断并限制附件大小?1、在后台action中判断,把上传的文件流用字节读出来,判断这个文件的字节流大小。
2、实现方法参考:上传文件io传输时必然有循环,在循环中设置监听变量,每次循环前都判断下该变量是否为true,若不是return/结束程序。当提交取消功能时设置监听变量为false,其间可能会设计到多线程问题,要好好考虑。
3、创建缓冲区BufferedReader,设置缓存大小为1M,读满了后就写到文件夹,然后判断数据写完没有,没写完创建新的文件路径,循环写入。