标签:mob rpo path aaaaa vdi buffer api rdo mtd
工程结构
1.生成一个文件到指定文件夹下
//产生一个唯一的名字 this.setFileName(String.valueOf(System.currentTimeMillis())); String path = ServletActionContext.getServletContext().getRealPath("/template/WordExportTemplate"); //工程下的完整路径名 String filepath = path +"\\" + fileName + ".doc"; //写入文件 Writer out = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(filePath,true), "utf-8"), 10240); out.write(" ");
2.将指定文件下的文件输出到客户端(将上面产生的文件输出)
public InputStream getInputStream() throws Exception { create(); String path = ServletActionContext.getServletContext().getRealPath("/template/WordExportTemplate"); String filepath = path +"\\" + fileName + ".doc"; //完整的路径名 File file = new File(filepath); //只用返回一个输入流 return FileUtils.openInputStream(file); }
3.将客户端上传的文件以特定名字存到指定文件夹下:
public String execute() throws Exception{ ServletContext servletContext = ServletActionContext.getServletContext(); // fileNameFileName表示文件上传时候的名字,也可以自己用UUID定义一个新的名字 String dir = servletContext.getRealPath("/template/ExcelImportTemplate/"+fileNameFileName); System.out.println(dir); // 文件输出流,写到dir指定的目录与名字 FileOutputStream outputStream = new FileOutputStream(dir); // 打开上传的文件的输入流 FileInputStream inputStream = new FileInputStream(fileName); byte[] buffer = new byte[1024]; int len = 0; // 从此输入流中将最多 b.length 个字节的数据读入一个 byte 数组中.读入缓冲区的字节总数,如果因为已经到达文件末尾而没有更多的数据,则返回 -1。 while((len = inputStream.read(buffer))!=-1){ // 将指定 byte 数组中从偏移量 off 开始的 len 个字节写入此文件输出流。 outputStream.write(buffer, 0, len); } inputStream.close(); outputStream.close(); return SUCCESS; }
4.读取指定文件夹下指定名字的文件:
ServletContext servletContext = ServletActionContext.getServletContext();
// fileNameFileName表示文件上传时候的名字,也可以自己用UUID定义一个新的名字
String dir = servletContext.getRealPath("/template/ExcelImportTemplate/"+fileNameFileName);
File file = new File(dir);
FileInputStream openInputStream = FileUtils.openInputStream(file);
HSSFWorkbook workbook = new HSSFWorkbook(openInputStream);
5. FileInputStream FileOutputStream是类。可以直接读取与写。
构造方法
例如:
public InputStream getInputStream() throws Exception { create(); String path = ServletActionContext.getServletContext().getRealPath("/template/ExcelExportTemplate"); String filepath = path +"\\" + fileName + ".xls"; File file = new File(filepath); //只用返回一个输入流 return FileUtils.openInputStream(file); }
String path = ServletActionContext.getServletContext().getRealPath("/template"); File tempFile = new File(path, templateName + ".xls"); tempFile.delete(); tempFile.createNewFile();
FileOutputStream stream = FileUtils.openOutputStream(tempFile);
1 ServletContext servletContext = ServletActionContext.getServletContext(); 2 // fileNameFileName表示文件上传时候的名字,也可以自己用UUID定义一个新的名字 3 String dir = servletContext.getRealPath("/template/ExcelImportTemplate/"+fileName); 4 FileOutputStream outputStream = new FileOutputStream(dir);
标签:mob rpo path aaaaa vdi buffer api rdo mtd
原文地址:http://www.cnblogs.com/qlqwjy/p/7236467.html