كتابة تحميل الملف باستخدام jsp
الكاتب:Eve Cole
وقت التحديث:2009-07-02 17:12:50
إذا كنت قد استخدمت VB من قبل لكتابة مكون تحميل ملف، فمن السهل جدًا استخدام JAVA لكتابة JAVABEAN لتحميل الملف.
المثال أدناه هو مجرد نسخة مبسطة
packageyuanyifileup;
استيراد java.io.*;
import java.util.*;
استيراد javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.PageContext;
الطبقة العامة yuanyifileup
{
طلب ServletRequest الخاص؛
استجابة ServletResponse الخاصة؛
تكوين PrivateServletConfig؛
بيانات ServletInputStream؛
int FormSize;
ملف f1؛
FileOutputStream os;
DataInputStream هو؛
اسم ملف السلسلة؛
بايت [] ب؛
بايت ر؛
علامة منطقية = خطأ؛
yuanyifileup العامة ()
{ }
تهيئة الفراغ العام (تكوين ServletConfig، طلب HttpServletRequest، استجابة HttpServletResponse) يلقي IOException
{
this.request=request;
this.response=response;
this.config=config;
DATA = request.getInputStream();
FormSize=request.getContentLength();
}
تهيئة الفراغ العام (PageContext pageContext) يلقي IOException
{
request=pageContext.getRequest();
استجابة=pageContext.getResponse();
config=pageContext.getServletConfig();
DATA = request.getInputStream();
FormSize=request.getContentLength();
}
اسم الملف المنطقي العام (سلسلة)
{
يحاول
{
ملف f1=ملف (ملفات) جديدة؛
os=new FileOutputStream(f1);
}
قبض على (IOException ه)
{عودة (خطأ)؛}
العودة (صحيح)؛
}
getByte () الفراغ العام
{
كثافة العمليات ط = 0؛
يحاول
{
is=new DataInputStream(DATA);
b=بايت جديد[FormSize];
بينما (صحيح)
{
يحاول
{
t=is.readByte();
ب[i]=t;
أنا++;
}
قبض على (EOFException ه)
{ استراحة؛}
}
قريب ()؛}
قبض على (IOException ه)
{}
}
حفظ منطقي عام ()
{
int i=0,start1=0,start2=0;
درجة حرارة السلسلة = ""؛
إذا (! العلم)
{
getByte();
العلم = صحيح؛
}
يحاول
{
temp=new String(b,"ISO8859_1");
}
قبض على (UnsupportedEncodingException ه)
{عودة (خطأ)؛}
start1=temp.indexOf("image/");
temp=temp.substring(start1);
start1=temp.indexOf("rnrn");
temp=temp.substring(start1+4);
start2=temp.indexOf(";rn");
إذا (start2!=-1)
{
temp=temp.substring(0,start2);
}
يحاول
{
byte[] img=temp.getBytes("ISO8859_1");
لـ (i=0;i<img.length;i++)
{ OS.write(img[i])
os.Close();
}
قبض على (IOException ه)
{عودة (خطأ)؛}
العودة (صحيح)؛
}
إذا كان هناك أي شيء لم تفهمه، أرسل بريدًا إلكترونيًا إلى: [email protected]
}