Tulis unggah file menggunakan JSP
Penulis:Eve Cole
Waktu Pembaruan:2009-07-02 17:13:03
Jika Anda pernah menggunakan VB untuk menulis komponen pengunggahan file, sangat mudah menggunakan JAVA untuk menulis JAVABEAN untuk pengunggahan file.
Contoh di bawah ini hanyalah versi yang disederhanakan
paketyuanyifileup;
import java.io.*;
import java.util.*;
import javax.servlet.*;
impor javax.servlet.http.*;
impor javax.servlet.jsp.PageContext;
yuanyifileup kelas publik
{
permintaan ServletRequest pribadi;
respons ServletResponse pribadi;
konfigurasi privateServletConfig;
DATA Aliran Masukan Servlet;
int Ukuran Formulir;
Berkas f1;
FileOutputStream os;
DataInputStream adalah;
nama file string;
byte[]b;
byte t;
bendera boolean=false;
fileup yuanyi publik()
{ }
inisialisasi kekosongan publik (konfigurasi ServletConfig, permintaan HttpServletRequest, respons HttpServletResponse) memunculkan IOException
{
this.request=permintaan;
this.respon=respon;
ini.config=config;
DATA = permintaan.getInputStream();
FormSize=permintaan.getContentLength();
}
inisialisasi kekosongan publik (PageContext pageContext) menampilkan IOException
{
permintaan=pageContext.getRequest();
respon=pageContext.getResponse();
config=pageContext.getServletConfig();
DATA = permintaan.getInputStream();
FormSize=permintaan.getContentLength();
}
setFilename boolean publik (String s)
{
mencoba
{
File f1=File baru;
os=FileOutputStream baru(f1);
}
menangkap(IOException e)
{kembali(salah);}
kembali (benar);
}
kekosongan publik getByte()
{
ke dalam saya=0;
mencoba
{
is=DataInputStream baru(DATA);
b=byte baru[Ukuran Bentuk];
sementara (benar)
{
mencoba
{
t=is.readByte();
b[saya]=t;
saya++;
}
menangkap(EOFException e)
{ merusak;}
}
adalah.dekat();}
menangkap(IOException e)
{}
}
penyimpanan boolean publik()
{
int i=0,mulai1=0,mulai2=0;
Suhu string="";
jika (!bendera)
{
getByte();
bendera=benar;
}
mencoba
{
temp=String baru(b,"ISO8859_1");
}
tangkapan(Tidak DidukungEncodingException e)
{kembali(salah);}
start1=temp.indexOf("gambar/");
temp=temp.substring(mulai1);
start1=temp.indexOf("rnrn");
temp=temp.substring(mulai1+4);
start2=temp.indexOf(";rn");
jika (mulai2!=-1)
{
temp=temp.substring(0,start2);
}
mencoba
{
byte[] img=temp.getBytes("ISO8859_1");
untuk (i=0;i<img.panjang;i++)
{ os.tulis(img[i] }
os.close();
}
menangkap(IOException e)
{kembali(salah);}
kembali (benar);
}
Jika ada yang belum dipahami, kirimkan email ke: [email protected]
}