当前位置:  技术问答>java相关

如何获取file控件的值!(在线等待)

    来源: 互联网  发布时间:2015-06-25

    本文导语:  使用file控件时,但是没有点取该控件时,此时该控件的值等于什么呢? | import  java.io.*;   import  javax.servlet.http.HttpServletRequest;   import  javax.servlet.ServletInputStream;   import  javax.servlet.Servl...

使用file控件时,但是没有点取该控件时,此时该控件的值等于什么呢?

|
import  java.io.*;  
import  javax.servlet.http.HttpServletRequest;  
import  javax.servlet.ServletInputStream;  
import  javax.servlet.ServletException;  

public  class  upload
{  
private  static  String  newline  =  "n";  
private  String  uploadDirectory  =  ".";  
private  String  ContentType  =  "";  
private  String  CharacterEncoding  =  "";  
String file1="";
String ext="";

private  String  getFileName(String  s)
{  
int  i  =  s.lastIndexOf("\");  
if(i  =  s.length()  -  1)
{  
i  =  s.lastIndexOf("/");  
if(i  =  s.length()  -  1)  
return  s;  
}  
return  s.substring(i  +  1);  
}  

public  void  setUploadDirectory(String  s)
{  
uploadDirectory  =  s;  
}  

public  void  setContentType(String  s)
{  
ContentType  =  s;  
int  j;  
if((j  =  ContentType.indexOf("boundary="))  !=  -1)
{  
ContentType  =  ContentType.substring(j  +  9);  
ContentType  =  "--"  +  ContentType;  
}  
}  

public  void  setCharacterEncoding(String  s)
{  
CharacterEncoding  =  s;  
}  
public void getfile(String filename01) 
{
file1=filename01;
  


public  String  uploadFile(HttpServletRequest  req) throws  ServletException,  IOException
{  
setCharacterEncoding(req.getCharacterEncoding());  
setContentType(req.getContentType());  
String filename01=uploadFile(req.getInputStream());
return filename01;  
}  

public  String  uploadFile(ServletInputStream  servletinputstream)  
throws  ServletException,  IOException
{  
String  filename  =  null;  
byte  Linebyte[]  =  new  byte[4096];  
byte  outLinebyte[]  =  new  byte[4096];  
int  ai[]  =  new  int[1];  
String  line;  
//得到文件名  
while((line  =  readLine//Reads the input stream, one line at a time. 
(Linebyte,  ai,  servletinputstream,  CharacterEncoding))  !=  null)
{  
int  i  =  line.indexOf("filename=");  
if(i  >=  0){  
line  =  line.substring(i  +  10);  
if((i  =  line.indexOf("""))  >  0)  
line  =  line.substring(0,  i);  
break;  
}  
}  
  filename  =  line;  
    if(filename  !=  null  &&  !filename.equals("""))
    {  
filename  =  getFileName(filename);
file1=file1+filename.substring(filename.indexOf("."));
 
 
String  sContentType  =  readLine(Linebyte,ai,servletinputstream,CharacterEncoding);  
if(sContentType.indexOf("Content-Type")  >=  0)  
readLine(Linebyte,  ai,  servletinputstream,  CharacterEncoding);  
//File(String  parent,  String  child)  
//Creates  a  new  File  instance  from  a  parent  pathname  string  
//and  a  child  pathname  string.  
File  file  =  new File(uploadDirectory,file1);  
//FileOutputStream(File  file)  
//Creates  a  file  output  stream  to  write  to  the  file  represented  
//by  the  specified  File  object.  
FileOutputStream  fileoutputstream  =  new  FileOutputStream(file);  
while((sContentType = readLine(Linebyte,ai,servletinputstream,CharacterEncoding))  !=  null)
{  
   if(sContentType.indexOf(ContentType)  ==  0  &&  Linebyte[0]  ==  45)  
break;  
  
   //write(byte[]  b,  int  off,  int  len)  
           //Writes  len  bytes  from  the  specified  byte  array  starting  
           //at  offset  off  to  this  file  output  stream.  
   fileoutputstream.write(Linebyte,  0,  ai[0]);  
   fileoutputstream.flush();  
  
      }  
    
      fileoutputstream.close();  
  }  
  return filename;
}  

private String readLine(byte Linebyte[],int ai[],ServletInputStream  servletinputstream,String CharacterEncoding)
{  
try
{  
//readLine(byte[]  buffer,  int  offset,  int  length)  
//Reads  a  line  from  the  POST  data.  
        ai[0]  =  servletinputstream.readLine(Linebyte,  0,  Linebyte.length);  
if(ai[0]  ==  -1)  
return  null;  
}catch(IOException  _ex){  
return  null;  
}  
try{  
if(CharacterEncoding  ==  null){  
//用缺省的编码方式把给定的byte数组转换为字符串  
//String(byte[]  bytes,  int  offset,  int  length)  
return  new  String(Linebyte,  0,  ai[0]);  
}
else{  
//用给定的编码方式把给定的byte数组转换为字符串  
//String(byte[]  bytes,  int  offset,  int  length,  String  enc)  
return  new  String(Linebyte,  0,  ai[0],  CharacterEncoding);  
}  
}
catch(Exception  _ex){  
return  null;  
}  
}  

}  

|



function get(){
var str=document.all("show").value;
var arr=str.split('\');
alert(arr[arr.length-1]);
}

    
 
 

您可能感兴趣的文章:

  • QT4 获取当前按下的控件名
  • 获取GTK控件的XWINDOW ID
  • ExtJS设置与获取radio控件的选取状态
  • 获取控件大小和设置调整控件的位置XY示例
  • .net后台获取html控件值的2种方法
  • c#获取用户控件中控件的ID的代码
  • js代码获取TreeView控件选中节点的Text和Value
  • 用C如何获取caps lock , num lock的打开状态,在线等待,即时结贴
  • ***在线等待!!!***Java中怎样获取,应用图片?
  • 请问高手如何在linux环境中获取bios时间,在线等待,急
  • 如何获取一个文件的相对路径?(急,在线等待……)
  • 如何获取远程的ip地址?。。。在线等待,谢了!!!
  • LINUX下如何获取程序名称,在线等待,急!
  • 多个线程同时等待一个锁,获取锁的机制是什么??
  • 在线等待,马上给分!java中如何获取系统时间?
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • Python获取网页编码的方法及示例代码
  • linux不用命令方式读文件获取网络流量,如何使用C函数调用获取网络流量信息?
  • java Servlet获取和设置cookie实例代码
  • 关于获取在jsp上获取客户端时间的问题
  • Python通过正则表达式获取,去除(过滤)或者替换HTML标签的几种方法
  • 关于Ganglia中的gmond组件收集到的资源信息如何获取(如何获取telnet后返回的信息)
  • php获取访客ip地址原理及提供七段代码供参考
  • java获取系统路径字体、得到某个目录下的所有文件名、获取当前路径
  • 利用sender的Parent获取GridView中的当前行(获取gridview的值)
  • php获取本机ip地址 php获取远程IP地址
  • linux获取主机名后用gethostbyname() 不能获取主机ip
  • javascript 获取url参数的正则表达式(用来获取某个参数值)
  • 在gtk下,怎样获取系统时间??怎样获取当前的目录路径???
  • C++获取文件哈希值(hash)和获取torrent(bt种子)磁力链接哈希值
  • linux根据pid获取进程名和获取进程pid(c语言获取pid)
  • Shell获取系统时间问题
  • android 如何获取MCC/MNC控制小区广播的开启
  • 新手问题:Linux下如何获取进程占用的系统资源
  • c++如何获取当前进程名
  • 怎么通过snmp获取远程主机指定进程信息?
  • C#获取路径的多种方法


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3