3000分求JSP图片上传放大缩小裁减的源代码
1 #大中小发表于2009-08-27 10:33:00
3000分求JSP图片上传放大缩小裁减的源代码。能裁减固定大小比如 的就行。有预览能显示图片长宽和大小file size)最好。
本人结帖率是99.87%, 可用分 +
dsf 如果没有JSP源代码 PHP源代码也可以。
String picPath;//图片路径 如:F:picturea.gifpublic String pictype[] ;//设置图片的后缀名FileInputStream in;int piclength;//设置图片的最大kb
}
public void setpiclength)//设置图片的最大长
{this.piclength=piclength;
}public int getpiclength()
{return piclength;
}public boolean testlength()//判断图片的长度是否大于设定的最大长度
{try{in=new FileInputStream(picPath) ;if(in.available()/1024>piclength)return false;
}catch(IOException e)
{
System.out.println(e.getMessage() ) ;
}return true;
}public void setpictype(String[] pictype)//设置图片的扩展名
{this.pictype=pictype;
}public boolean testpictype()//判断图片的扩展名是否是规定的
{if(pictype!=null)
{for(int i=0; i <pictype. length; i )
{if(picPath.endsWith(pictype) )return true;
}return false;
}return false;
}
}
以下是在jsp页面中调用uploadpic
首先要引入此bean所在的包
<%@page import="myBean.uploadpic" %>
<jsp:useBean id="pic" scope="page" class="myBean.uploadpic" />下一条语句是得到上一层页面也就是用户提交的图片路径
Stringpicp=codetostring.codeToString(request.getParameter("picPath")) ;pic. setpicPath(picp) ;pic. setpiclength(100) ;//以kb为单位if(pic. testlength() )out.print("length ok <br>") ;elseout.print("length ok") ;
String p1,p2;p1=". jpg";p2=".gif";
String[] type={p1,p2} ;pic. setpictype(type) ;if(pic. testpictype() )out.print("typeok") ;elseout.print("type error") ;made by zonecens www.okjava.net.cn
不知道2楼的怎么样我来学习一个
帮顶
好像百度一招很多
百度一下找到相关网页约11,400,000篇用时0.036秒3000连个星星都升不了
这个是JAVA代码package ftp;import sun.net.ftp.*;import sun.net.*;import java.awt.*;import java.awt.event.*;import java.applet.*;
import java. io.*;class FTPextends Applet {
FtpClient aftp;
DataOutputStream outputs;
TelnetInputStream ins;
TelnetOutputStream outs;
TextArea lsArea;
Label LblPrompt;
Button BtnConn;
Button BtnClose;
TextField TxtUID;
TextField TxtPWD;
TextField TxtHost;int ch;public String a = "没有连接主机";
String hostname = "";public void init() {setBackground(Color.white) ;setLayout(new GridBagLayout() ) ;
GridBagConstraints GBC = new GridBagConstraints() ;
LblPrompt = new Label ("没有连接主机") ;LblPrompt. setAlignment(Label.LEFT) ;BtnConn = new Button("连接") ;
BtnClose = new Button("断开") ;
BtnClose.enable(false) ;
TxtUID = new TextField("", 15) ;TxtPWD = new TextField("", 15) ;TxtPWD. setEchoCharacter('*' ) ;
TxtHost = new TextField("", 20) ;Label LblUID = new Label ("User ID:") ;Label LblPWD = new Label ("PWD:") ;Label LblHost = new Label ("Host:") ;
lsArea = new TextArea(30, 80) ;lsArea. setEditable(false) ;
GBC.gridwidth = GridBagConstraints.REMAINDER;GBC.f ill = GridBagConstraints.HORIZONTAL;( (GridBagLayout) getLayout() ) . setConstraints(LblPrompt, GBC) ;add(LblPrompt) ;
GBC.gridwidth = 1 ;
( (GridBagLayout) getLayout() ) . setConstraints(LblHost, GBC) ;add(LblHost) ;
GBC.gridwidth = GridBagConstraints.REMAINDER;( (GridBagLayout) getLayout() ) . setConstraints(TxtHost, GBC) ;add(TxtHost) ;
GBC.gridwidth = 1 ;
( (GridBagLayout) getLayout() ) . setConstraints(LblUID, GBC) ;add(LblUID) ;
GBC.gridwidth = 1 ;
( (GridBagLayout) getLayout() ) . setConstraints(TxtUID, GBC) ;add(TxtUID) ;
GBC.gridwidth = 1 ;
( (GridBagLayout) getLayout() ) . setConstraints(LblPWD, GBC) ;add(LblPWD) ;
GBC.gridwidth = 1 ;
( (GridBagLayout) getLayout() ) . setConstraints(TxtPWD, GBC) ;add(TxtPWD) ;
GBC.gridwidth = 1 ;
GBC.weightx = 2;
( (GridBagLayout) getLayout() ) . setConstraints(BtnConn, GBC) ;add(BtnConn) ;
GBC.gridwidth = GridBagConstraints.REMAINDER;( (GridBagLayout) getLayout() ) . setConstraints(BtnClose, GBC) ;add(BtnClose) ;
GBC.gridwidth = GridBagConstraints.REMAINDER;GBC.f ill = GridBagConstraints.HORIZONTAL;( (GridBagLayout) getLayout() ) . setConstraints(lsArea, GBC) ;add(lsArea) ;
}public boolean connect(String hostname, String uid,String pwd) {this.hostname = hostname;
LblPrompt. setText("正在连接请等待. . . . . ") ;try {aftp = new FtpClient(hostname) ;aftp. login(uid, pwd) ;aftp.binary() ;showFileContents() ;
}catch (FtpLoginException e) {a = "无权限与主机:" + hostname + "连接!";
LblPrompt. setText(a) ;return false;
}catch (IOException e) {a = "连接主机:" + hostname + "失败!";
LblPrompt. setText(a) ;return false;
}catch (SecurityException e) {a = "无权限与主机:" + hostname + "连接!";
LblPrompt. setText(a) ;return false;
}
LblPrompt. setText("连接主机:" + hostname + "成
功!") ;return true;
}
public void stop() {try {aftp.closeServer() ;
}catch (IOException e) {
}
}public void paint(Graphics g) {
}public boolean action(Event evt, Object obj) {if (evt. target == BtnConn) {
LblPrompt. setText("正在连接请等待. . . . . ") ;if (connect(TxtHost.getText() , TxtUID.getText() , TxtPWD.getText() ) ) {
BtnConn. setEnabled(false) ;
BtnClose. setEnabled(true) ;
}return true;
}if (evt. target == BtnClose) {
stop() ;
BtnConn.enable(true) ;
BtnClose.enable(false) ;
LblPrompt. setText("与主机" + hostname + "连
接已断开!") ;return true;
}return super.action(evt, obj) ;
}public boolean sendFile(String filepathname) {boolean result = true;if (aftp != null) {
LblPrompt. setText("正在粘贴文件,请耐心等
待. . . . ") ;
String contentperline;try {a = "粘贴成功!";
String fg = new String("\") ;int index = filepathname. lastIndexOf(fg) ;String filename = filepathname. substring(index + 1) ;
File localFile;localFile = new File(filepathname) ;RandomAccessFile sendFile = new RandomAccessFile(filepathname, "r") ;
//sendFile. seek(0) ;outs = aftp.put(filename) ;outputs = new DataOutputStream(outs) ;while (sendFile.getFilePointer() < sendFile. length() ) {ch = sendFile.read() ;outputs.write(ch) ;
}outs.close() ;sendFile.close() ;
}catch (IOException e) {a = "粘贴失败!";result = false;
}
LblPrompt. setText(a) ;showFileContents() ;
}else {result = false;
}return result;
}public void showFileContents() {StringBuffer buf = new StringBuffer() ;lsArea. setText("") ;try {ins = aftp. list() ;while ( (ch = ins.read() ) >= 0) {buf.append( (char) ch) ;
}lsArea.appendText(buf. toString() ) ;ins.close() ;
}catch (IOException e) {
}
}public static void main(String args[] ) {Frame f = new Frame("FTP Client") ;f.addWindowListener(new WindowAdapter() {
Sharktech 鲨鱼机房商家我们是不是算比较熟悉的,因为有很多的服务商渠道的高防服务器都是拿他们家的机器然后部署高防VPS主机的,不过这几年Sharktech商家有自己直接销售云服务器产品,比如看到有新增公有云主机有促销活动,一般有人可能买回去自己搭建虚拟主机拆分销售的,有的也是自用的。有看到不少网友在分享到鲨鱼机房商家促销活动期间,有赠送开通公有云主机$50,可以购买最低配置的,$49/月的...
已经有一段时间没有听到Gigsgigscloud服务商的信息,这不今天看到商家有新增一款国际版线路的美国VPS主机,年付也是比较便宜的只需要26美元。线路上是接入Cogentco、NTT、AN2YIX以及其他亚洲Peering。这款方案的VPS主机默认的配置是1Gbps带宽,比较神奇的需要等待手工人工开通激活,不是立即开通的。我们看看这款服务器在哪里选择看到套餐。内存CPUSSD流量价格购买地址1...
韩国云服务器哪个好?韩国云服务器好用吗?韩国是距离我国很近的一个国家,很多站长用户在考虑国外云服务器时,也会将韩国云服务器列入其中。绝大部分用户都是接触的免备案香港和美国居多,在加上服务器确实不错,所以形成了习惯性依赖。但也有不少用户开始寻找其它的海外免备案云服务器,比如韩国云服务器。下面云服务器网(yuntue.com)就推荐最好用的韩国cn2云服务器,韩国CN2云服务器租用推荐。为什么推荐租用...