返回首页

请给所有类型的文件,通用的解决方案......
NBSP

<%@语言页的"java"%GT
放大器; LT; HTmlgt;
放大器; LT; HEADgt;放大器; LT; TITLEgt;显示文件上传形式的useramp; LT ;/ TITLEgt;放大器; LT ;/ HEADgt;
NBSP
放大器; LT; BODYgt;放大器; LT; FORMnbsp; =
"upload.jsp"的方法是enctype ="的multipart / form-data的"行动POSTgt;
LT; brgt; LT; brgt; LT; brgt;
LT; centergt;
LT;表边境="0"BGCOLOR = ccccffgt;
LT; trgt;
LT; centergt
LT TD跨度="2"="中心"GT; LT; BGT;上传文件;当前日期和TIMElt ;/ BGT LT; centergt; LT ;/ tdgt;
LT; trgt /
NBSP LT; trgt;
NBSP LT TD跨度="2"对齐="中心"GT;放大器; LT ;/ tdgt;
LT ;/ trgt;
LT; trgt
NBSP ; tdgt; LT,LT; BGT;选择要上传的文件:LT ;/ BGT; LT ;/ tdgt;
LT; tdgt;放大器; LT输入名称="文件"="文件"> LT ;/ tdgt;
NBSP LT ;/ trgt;
LT; trgt;
LT; TD跨度="2"对齐="中心"GT;放大器; LT ;/ tdgt;
LT ;/ trgt;
LT; trgt
LT TD跨度="2"=" "GT;放大器; LT ;/ trgt;
LT; tablegt
LT ;/ centergt; NBSP NBSP
放大器; LT ;/ FORMgt;
放; LT ;/ BODYgt;
放; LT ;/ HTMLgt;
NBSP



******** upload.jsp ********************
<%@页面语言"爪哇"的contentType ="文本/ HTML字符集= ISO-8859-1"
pageEncoding ="ISO-8859-1"%> {BR } <%@页面进口="java.io. *"%>
<%
字符串的contentType = request.getContentType()
("内容类型是::"的contentType);
((的contentType = NULL)放大器;放大器;(contentType.indexOf("的multipart /表单数据")> = 0))
{
=新的数据输入流中的数据输入流(request.getInputStream ()); INT formDataLength = request.getContentLength()
字节dataBytes [] =新的字节[formDataLength];
byteRead = 0;
totalBytesRead = 0;

(totalBytesRead LT; formDataLength)
{
byteRead"= in.read(dataBytes,totalBytesRead,formDataLength);
totalBytesRead"byteRead =

字符串文件=新的String(da​​taBytes); BR}字符串SAVEFILE = file.substring(file.indexOf("文件名= \"")10)
/ / out.print("文件名:"saveFile.toString());:
SAVEFILE"= SAVEFILE。子字串(0,saveFile.indexOf("\ N"))
/ / out.print("文件名:"saveFile.toString())
SAVEFILE"= saveFile.substring(saveFile.lastIndexOf("\ \")1,saveFile.indexOf("\""))
/ / out.print("文件名:"saveFile.toString())
/ / out.print(dataBytes){BR } INT的lastIndex = contentType.lastIndexOf("=");
字符串边界= contentType.substring(contentType.length的lastIndex 1,())
/ /通过out.println(边界);
诠释POS
POS = file.indexOf("文件名= \"")
POS = file.indexOf("\ N",POS)
POS = file.indexOf("\ N" POS)1
POS = file.indexOf("\ N",POS);
boundaryLocation = file.indexOf(边界,POS) - 4
startPos =((file.substring (0,POS))的GetBytes())的长度;
endpos的=((file.substring(0,boundaryLocation。))的GetBytes())的长度;
SAVEFILE"的"G:。\ \在线移动存储\ \保存的文件"SAVEFILE;
文件输出流fileOut =新的文件输出流(SAVEFILE)
/ / fileOut.write(dataBytes);
fileOut.write"(dataBytes的startPos,(endpos的 - startPos))
fileOut.flush"()
fileOut.close"()
通过out.println("文件保存为"SAVEFILE)

%GT;| snehal nikam2

回答

评论会员:游客 时间:2012/02/05
这是什么问题呢?你写你没有任何静态变量和以下明智的编码实践的的的QueryBuilder形式,每个实例是独立的,你可以打开许多情况下,只要你想:MayankTopiwala:1.8402查询的数据的主要问题。建设者的形式。这种形式可以打开多个父形式Naerling
|我假设你有多个MDI窗体,每个MDI窗体有一个菜单
那么,在打开QueryBuilder表格Click事件,你可以做下面。

public partial class frmMdiForm1 : Form

    {

        public frmMdiForm1()

        {

            InitializeComponent();

        }

 

        private void Button_Click(Object sender, EventArgs e)

        {

            Form frm = new frmQueryBuilder();

            frm.MdiParent = this;

            frm.Show

        }

    }
你可能有相同的代码在你的第二个MDI窗体。
{C}因为这两个Click事件与他们目前的父窗体中打开一个新的QueryBuilder表格作为的MdiParent您的表格应该有各自父MdiForms
评论会员:ayad0net 时间:2012/02/05
{的C2}