社区
Web 开发
帖子详情
在用jspsmart上传文件的问题
lxglxg84112
2003-04-06 11:06:46
我在用jspsmart上传文件的时候,把文件存在名为upload的文件夹中,但是如果
上传的文件名字是相同的话,就会把前一文件覆盖呀,怎么改变上传文件的名字呀
我是么具体的程序,谢谢高手来帮着解决!!!
...全文
147
4
打赏
收藏
在用jspsmart上传文件的问题
我在用jspsmart上传文件的时候,把文件存在名为upload的文件夹中,但是如果 上传的文件名字是相同的话,就会把前一文件覆盖呀,怎么改变上传文件的名字呀 我是么具体的程序,谢谢高手来帮着解决!!!
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
meizizi
2003-04-06
打赏
举报
回复
或者
try {
FileInputStream inStream = new FileInputStream(yourFile);//包括路径名。
或类似的方法都可以。
}catch(FileNotFoundException e) {
在这里做你的文件名修改,不和原来的文件同名。
再继续。
}
meizizi
2003-04-06
打赏
举报
回复
或者
try {
FileInputStream inStream = new FileInputStream(fileDestination);
}catch(FileNotFoundException e) {
}
meizizi
2003-04-06
打赏
举报
回复
重载upload() 方法
public void upload(String newFileName)
throws SmartUploadException, IOException, ServletException
{
int totalRead = 0;
int readBytes = 0;
long totalFileSize = 0L;
boolean found = false;
String dataHeader = new String();
String fieldName = new String();
String fileName = new String();
String fileExt = new String();
String filePathName = new String();
String contentType = new String();
String contentDisp = new String();
String typeMIME = new String();
String subTypeMIME = new String();
boolean isFile = false;
m_totalBytes = m_request.getContentLength();
m_binArray = new byte[m_totalBytes];
for(; totalRead < m_totalBytes; totalRead += readBytes)
//System.out.println("to talRead begin !");
try
{
m_request.getInputStream();
System.out.println("to talRead 11111111 !");
readBytes = m_request.getInputStream().read(m_binArray, totalRead, m_totalBytes - totalRead);
System.out.println("to talRead end readBytes !"+readBytes);
}
catch(Exception e)
{
throw new SmartUploadException("Unable to upload.");
}
for(; !found && m_currentIndex < m_totalBytes; m_currentIndex++)
if(m_binArray[m_currentIndex] == 13)
found = true;
else
m_boundary = m_boundary + (char)m_binArray[m_currentIndex];
if(m_currentIndex == 1)
return;
m_currentIndex++;
do
{
if(m_currentIndex >= m_totalBytes)
break;
dataHeader = getDataHeader();
m_currentIndex = m_currentIndex + 2;
isFile = dataHeader.indexOf("filename") > 0;
fieldName = getDataFieldValue(dataHeader, "name");
if(isFile)
{
filePathName = getDataFieldValue(dataHeader, "filename");
fileName = getFileName(filePathName);
fileExt = getFileExt(fileName);
contentType = getContentType(dataHeader);
contentDisp = getContentDisp(dataHeader);
typeMIME = getTypeMIME(contentType);
subTypeMIME = getSubTypeMIME(contentType);
}
getDataSection();
if(isFile && fileName.length() > 0)
{
if(m_deniedFilesList.contains(fileExt))
throw new SecurityException("The extension of the file is denied to be uploaded (1015).");
if(!m_allowedFilesList.isEmpty() && !m_allowedFilesList.contains(fileExt))
throw new SecurityException("The extension of the file is not allowed to be uploaded (1010).");
if(m_maxFileSize > (long)0 && (long)((m_endData - m_startData) + 1) > m_maxFileSize)
throw new SecurityException(String.valueOf((new StringBuffer("Size exceeded for this file : ")).append(fileName).append(" (1105).")));
totalFileSize += (m_endData - m_startData) + 1;
if(m_totalMaxFileSize > (long)0 && totalFileSize > m_totalMaxFileSize)
throw new SecurityException("Total File Size exceeded (1110).");
}
if(isFile)
{
newFile = new com.philwong.utility.upload.File();
newFile.setParent(this);
newFile.setFieldName(fieldName);
if (newFileName != null && newFileName.equals("none")){
newFile.setFileName(fileName);
newFile.setOldFileName("");
}else {
newFile.setFileName(newFileName);
newFile.setOldFileName(fileName);
}
newFile.setFileExt(fileExt);
newFile.setFilePathName(filePathName);
newFile.setIsMissing(filePathName.length() == 0);
newFile.setContentType(contentType);
newFile.setContentDisp(contentDisp);
newFile.setTypeMIME(typeMIME);
newFile.setSubTypeMIME(subTypeMIME);
if(contentType.indexOf("application/x-macbinary") > 0)
m_startData = m_startData + 128;
newFile.setSize((m_endData - m_startData) + 1);
newFile.setStartData(m_startData);
newFile.setEndData(m_endData);
m_files.addFile(newFile);
} else
{
String value = new String(m_binArray, m_startData, (m_endData - m_startData) + 1);
m_formRequest.putParameter(fieldName, value);
}
if((char)m_binArray[m_currentIndex + 1] == '-')
break;
m_currentIndex = m_currentIndex + 2;
} while(true);
}
黑马
2003-04-06
打赏
举报
回复
学习
JSP
Smart
实现文件上传时file和text表单同时提交的
问题
原来这世界,就是一个圆。自始至终我都在圆圈里运动,从起点到起点,从终点到终点.在网上搜了无数的资料,为了寻找text表单和file文件一起提交的方法,累的脑袋直响.最后回到了开始的地方.找到了那条,曾经被我忽略的代码.原来,它可以这样简单。 好吧,我直切正题,下面的例子中有从网上哪位前辈写的内容,我只是稍加改动,写本文没有商业目的,前辈原谅我没引入你的大名啊. 程序有一个提交页面,其实用ht
文件上传(
jsp
smart
实现)file和text表单同时提交的
问题
好吧,我直切正题,下面的例子中有从网上哪位前辈写的内容,我只是稍加改动,写本文没有商业目的,前辈原谅我没引入你的大名啊. 程序有一个提交页面,其实用html就好了,不过原代码用的是
jsp
我也拿来用吧. selectfile.
jsp
---->servletUpload.java 基本就是这么个结构 下面是代码: //selectfile.
jsp
fi
研究了三天的文件上传(
jsp
smart
实现)file和text表单同时提交的
问题
原来这世界,就是一个圆.自始至终我都在圆圈里运动,从起点到起点,从终点到终点.在网上搜了无数的资料,为了寻找text表单和file文件一起提交的方法,累的脑袋直响.最后回到了开始的地方.找到了那条,曾经被我忽略的代码.原来,它可以这样简单.好吧,我直切正题,下面的例子中有从网上哪位前辈写的内容,我只是稍加改动,写本文没有商业目的,前辈原谅我没引入你的大名啊.程序有一个提交页面,其实用html就好了
关于上传组件
jsp
smart
和commonfileupload的一些感触!!
最近用
jsp
+servlet+javabean写了个小项目,说小也不小,里面的功能相对于来说都挺全的。能够实现最基础的增删改查,这个所谓的增删改查,是仿照以前用过的几个cms系统来实现的。。。。其中令我最费劲的我感觉还是属于上传的功能了。。。 因为以前没做过上传的功能,所以也没怎么关注。。。但这次的模块用到了上传,所以就费劲心思的研究了上传的功能。。。 目前...
(共181页PPT)大型某著名企业集团数字化转型物流行业数智化应用架构设计解决方案.pptx
(共181页PPT)大型某著名企业集团数字化转型物流行业数智化应用架构设计解决方案.pptx
Web 开发
81,108
社区成员
341,721
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章