精华内容
下载资源
问答
  • java 导出 txt 弹出框

    2010-06-09 16:45:30
    java"] HttpServletResponse response =ServletActionContext.getResponse(); response.setContentType("application/txt"); response.setHeader("Content-disposition", "...


    HttpServletResponse response =ServletActionContext.getResponse();

    response.setContentType("application/txt");
    response.setHeader("Content-disposition", "attachment;filename="+文件名+".txt");

    BufferedOutputStream out = null;

    try {
    out = new BufferedOutputStream(response.getOutputStream());
    out.write(strSCGZZ.getBytes());
    } catch (IOException e) {
    throw e;
    } finally {
    if (out != null){
    out.close();
    }
    }
    展开全文
  • java 如何实现pdf word excel文件点击后弹出弹出框 显示查看或者保存 保存的话直接下载就好,就是这个查看怎么办,word excel分03版本和07以上版本,而且图片又不一定能显示出来
  • js部分代码: //开启下载 window.location.href = "wechatrelease/...Java部分代码: @ResponseBody @RequestMapping("/download") public void download(HttpServletRequest request, HttpServletRespons...

    js部分代码:

    //开启下载
    window.location.href = "wechatrelease/download?url=" + url;

    Java部分代码:

    @ResponseBody
    @RequestMapping("/download")
    public void download(HttpServletRequest request, HttpServletResponse response) {
    	try {
    		String url = request.getParameter("url");
    		String filepath = uploadUrl + url.substring(7); //此处由于项目路径特殊,做了路径拼接,可忽略
    		filepath = filepath.replace("/", "\\");
    		// 弹出下载选项
    		DownloadUtil.dataUpload(filepath, "", request, response);
    	} catch (Exception e) {
    		e.printStackTrace();
    	}
    } 

    DownloadUtil工具类 

    public class DownloadUtil {
        public static HttpServletResponse dataUpload(String fileSrc, String rename, HttpServletRequest request, HttpServletResponse response) {
            response.setContentType("text/html; charset=UTF-8");
            try {
                File file = new File(fileSrc);
                // 取得文件名。
                String filename = file.getName();
                if (!ToolsUtil.isEmpty(rename)) {
                    filename = rename;
                }
                String agent = request.getHeader("USER-AGENT");
                if (null != agent && -1 != agent.indexOf("MSIE") || null != agent && -1 != agent.indexOf("Trident")) {// ie
                    String name = java.net.URLEncoder.encode(filename, "UTF8");
                    filename = name;
                } else if (null != agent && -1 != agent.indexOf("Mozilla")) {// 火狐,chrome等
                    filename = new String(filename.getBytes("UTF-8"), "iso-8859-1");
                }
                // 取得文件的后缀名。
                // String ext = filename.substring(filename.lastIndexOf(".") +
                // 1).toUpperCase();
                // 以流的形式下载文件。
                InputStream fis = new BufferedInputStream(new FileInputStream(file));
                byte[] buffer = new byte[fis.available()];
                fis.read(buffer);
                fis.close();
                response.reset();
                // 设置response的Header
                response.addHeader("Content-Disposition", "attachment;filename=" + filename);
                response.addHeader("Content-Length", "" + file.length());
                OutputStream out = new BufferedOutputStream(response.getOutputStream());
                response.setContentType("application/octet-stream");
                out.write(buffer);
                out.flush();
                out.close();
            } catch (IOException ex) {
                ex.printStackTrace();
            }
            return response;
        }
    }

     

     

     

    展开全文
  • 如下示例: JButton[] buttons = new ... JButton openFileB = new JButton("打开文件"); buttons[0] = openFileB; openFileB.addActionListener(new ActionListener() { @Override public void ac...

    如下示例:

    
    		JButton[] buttons = new JButton[1];
    		JButton openFileB = new JButton("打开文件");
    		buttons[0] = openFileB;
    		openFileB.addActionListener(new ActionListener() {
    
    			@Override
    			public void actionPerformed(ActionEvent e) {
    				try {
    					Runtime.getRuntime().exec("cmd /c start " + doc);
    				} catch (IOException e1) {
    					e1.printStackTrace();
    				}
    			}
    		});
    
    		JOptionPane.showOptionDialog(context.getParentFrame(), doc,
    				"影响性分析报告生成路径", JOptionPane.YES_OPTION,
    				JOptionPane.INFORMATION_MESSAGE, null, buttons, buttons[0]);

     

    展开全文
  • 实现导出文件弹出下载 主要是 设置成 文件流 stream 类型的response. 浏览器就会识别出 文件下载弹出 下载。 这里总结三个方式 sturts框架中弹出 详见  java通过struts实现web中的文件下载 其中关键的...



    实现导出文件时 弹出下载框 主要是 设置成 文件流  stream 类型的response. 浏览器就会识别出 文件下载弹出 下载框。


    这里总结三个方式

    web-sturts框架中弹出

    详见  

    java通过struts实现web中的文件下载

    其中关键的设置是

    <struts>        
       <package name="struts2" extends="struts-default">        
           <action name="FileDownload" class="com.struts2.filedownload.FileDownload">  
               <result name="success" type="stream">  
                   <param name="contentType">text/plain</param>  
                   <param name="contentDisposition">attachment;fileName="${fileName}"</param>  
                   <param name="inputName">downloadFile</param>  
                   <param name="bufferSize">1024</param>  
               </result>  
           </action>  
         
       </package>  
         
    </struts>  



    web-SpringMvc等非struts框架中弹出

    在response中设置头

    response.addHeader("Content-Disposition", "attachment;filename="+ new String(filename.getBytes()));  
               OutputStream os= new BufferedOutputStream(response.getOutputStream());  
               response.setContentType("application/vnd.ms-excel;charset=gb2312");  
               os.write(buffer);  
               os.flush();  
               os.close();  

    例如:

    jsp页面 使用js    提交 post  form

        $(document).ready(function() {    
        	var $searchForm = $('#search_form').on('submit',function(){
            	$dt.DataTable().searchEx( {} ).draw();
            	return false;
            }).on('click', 'button.export', function(){ 
            var searchData={};
            searchData.search=$('#search_form').formGet();  
              console.log(searchData);
               post('/order/list/export',searchData);        	
            });
                  
                  
          function post(URL, PARAMS) {        
            var temp = document.createElement("form");        
            temp.action = URL;        
            temp.method = "post";        
            temp.style.display = "none";        
            for (var x in PARAMS.search) {        
               var opt = document.createElement("textarea"); 
               if(x=="id"||x=="expressNumber"||x=="payStatus"){      
                 opt.name = x;        
                 opt.value = PARAMS.search[x];
                 temp.appendChild(opt);  
               }       
            }        
            document.body.appendChild(temp);        
            temp.submit(); 
          }  
    }

    后端接受参数后查询出数据,把生成的excel写入excel,返回文件流

    	@RequestMapping("/list/export")
    	public Object export(@RequestParam String id,@RequestParam  String expressNumber,@RequestParam String payStatus,HttpServletResponse response) {
    		PagerRequest<Map> req=new PagerRequest<Map>();
    		req.setLength(0);
    		req.setOffset(0);
    		HashMap<String, String> search=new HashMap<String, String>();
    		search.put("id", id);
    		search.put("expressNumber", expressNumber);
    		search.put("payStatus", payStatus);
    		req.setSearch(search);
    		List<Order> orders = new ArrayList<Order>();
    		if (req.getSearch() == null||req.getSearch().size()==0) {
    			orders = (List<Order>) orderRepository.findAll();
    		} else {
    			Page<Order> page = orderRepository.listWithSearch(new PageRequest(
    					0,(int) orderRepository.count()), req
    					.getSearch());
    			orders = page.getContent();
    		}
    		if (productService.exportOrders(orders,response)) {
    			return null;
    		}
    		return null; 
    
    	}


    	@Override
    		public boolean exportOrders(List<Order> orders, HttpServletResponse response) {
    			try {
    
    				ArrayList<String[]> contentsArrayList = new ArrayList<String[]>();
    				String[] titles = new String[14];
    				titles[0] = "订单日期";
    				titles[1] = "订单支付日期";
    				titles[2] = "订单编号";
    				titles[3] = "产品名称";
    				titles[4] = "产品类型";
    				titles[5] = "单价";
    				titles[6] = "购买数量";
    				titles[7] = "总金额";
    				titles[8] = "付款状态";
    				titles[9] = "收件人名称";
    				titles[10] = "收件人电话";
    				titles[11] = "配送地址";
    				titles[12] = "配送日期";
    				titles[13] = "发票信息";
    				contentsArrayList.add(titles);
    				for (int i = 0; i < orders.size(); i++) {
    					List<BuyList> butlists = orders.get(i).getBuyList();
    					for (BuyList buyList : butlists) {
    						String[] content = new String[14];
    						content[0] = orders.get(i).getCreateDate();
    						content[1] = orders.get(i).getPayDate();
    						content[2] = orders.get(i).getId();
    						content[3] = buyList.getProductName();
    						content[4] = buyList.getProductTypeStr();
    						if(buyList.getProductPrice()!=null){
    							content[5]=buyList.getProductPrice().toString();	
    						}						
    						content[6] = String.valueOf(buyList.getProductCount());
    						content[7] = orders.get(i).getTotalMoney();
    						content[8] = orders.get(i).getPayStatus() == Order.PAY_PAIY ? "已付款"
    								: "未付款";
    						content[9] = orders.get(i).getName();
    						content[10] = orders.get(i).getMobile();
    						content[11] = orders.get(i).getAddress();
    						OrderStatus orderStatus=orders.get(i).getOrderStatus();
    						if(orderStatus!=null){
    							HistoryStatus historyStatus=orderStatus.getCurrent();
    							if(historyStatus!=null){
    								if(historyStatus.getStatus()==OrderStatus.STATUS_SEND_OUT){
    								content[12] =historyStatus.getDatetime();	
    								}
    							}
    						}
    						content[13] = orders.get(i).isHasInvoice() == true ? "是"
    								: "否";
    						contentsArrayList.add(content);
    					}
    				}
    				String[][] contents = ExcelUtils.changeToArray(contentsArrayList);				
    				String fileName = ExcelUtils.writeExcel(contents, "订单",response);
    			    return true;
    			} catch (Exception e) {
    				e.printStackTrace();
    
    			}
    			return false;
    		}

    public static String writeExcel(String[][] titles, String title, HttpServletResponse response) throws IOException {
    		String fileName =title
    				+ Calendar.getInstance().getTimeInMillis();
    		response.setContentType("application/vnd.ms-excel;charset=utf-8");
            response.setHeader("Content-Disposition", "attachment;filename="+ new String((fileName + ".xls").getBytes(), "iso-8859-1"));
            //根据传进来的file对象创建可写入的Excel工作薄  
            OutputStream os = response.getOutputStream();  
    			WritableWorkbook wwb = null;
    			try {
    				// 首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
    
    				wwb = Workbook.createWorkbook(os);
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    			if (wwb != null) {
    				// 创建一个可写入的工作表
    				// Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置
    				WritableSheet ws = wwb.createSheet(title, 1);
    
    				// 下面开始添加单元格
    				for (int row = 0; row < titles.length; row++) {
    					// System.out.println(row);
    					for (int j = 0; j < titles[row].length; j++) {
    						// 这里需要注意的是,在Excel中,第一个参数表示列,第二个表示行
    						Label labelC = new Label(j, row, titles[row][j]);
    
    						try {
    							// 将生成的单元格添加到工作表中
    							ws.addCell(labelC);
    						} catch (RowsExceededException e) {
    							e.printStackTrace();
    						} catch (WriteException e) {
    							e.printStackTrace();
    						}
    					}
    				}
    
    				try {
    					// 从内存中写入文件中
    					wwb.write();			 
    					// 关闭资源,释放内存
    					wwb.close();
    					os.flush();
    					os.close();
    				} catch (IOException e) {
    					e.printStackTrace();
    				} catch (WriteException e) {
    					e.printStackTrace();
    				}
    			}
    			return fileName;
    		}
    	
    
    	
    	public static String[][] changeToArray(ArrayList<String[]> contentsArrayList) {
    		String[][] contents = new String[contentsArrayList.size()][];
    		for (int i = 0; i < contentsArrayList.size(); i++) {
    			contents[i] = contentsArrayList.get(i);
    		}
    		return contents;
    	}


    关键步骤在于

    1.传入response

    2.设置response的头部文件类型和 把工作簿写入 response的 outputStream中即可。无需特意返回response。

    response.setContentType("application/vnd.ms-excel;charset=utf-8");
    response.setHeader("Content-Disposition", "attachment;filename="+ new String((fileName + ".xls").getBytes(), "iso-8859-1"));
            //根据传进来的file对象创建可写入的Excel工作薄  
            OutputStream os = response.getOutputStream();  
    WritableWorkbook wwb = null;
    try {
               首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
    wwb = Workbook.createWorkbook(os);


    ps: jsp中请求的action 记得要return null,因为 已经包含了 文件流的response。


    如果不是return null的话则会冲突报错。





    优化



    jsp页面 使用js    提交 post  form

        $(document).ready(function() {    
        	var $searchForm = $('#search_form').on('submit',function(){
            	$dt.DataTable().searchEx( {} ).draw();
            	return false;
            }).on('click', 'button.export', function(){ 
            var searchData={};
            searchData.search=$('#search_form').formGet();  
              console.log(searchData);
               post('/order/list/export',searchData);        	
            });
                  
                  
          function post(URL, PARAMS) {        
            var temp = document.createElement("form");        
            temp.action = URL;        
            temp.method = "post";        
            temp.style.display = "none";        
            for (var x in PARAMS.search) {        
               var opt = document.createElement("textarea"); 
               if(x=="id"||x=="expressNumber"||x=="payStatus"){      
                 opt.name = x;        
                 opt.value = PARAMS.search[x];
                 temp.appendChild(opt);  
               }       
            }        
            document.body.appendChild(temp);        
            temp.submit(); 
          }  
    }




    controller.class接收

    @RequestMapping("/product-upgrade/list/export")
        public void export(HttpServletRequest request, HttpServletResponse response) {
            Map<String, String> search = new HashMap<>();
            Enumeration<String> parameterNames = request.getParameterNames();
            while (parameterNames.hasMoreElements()) {
                String key = parameterNames.nextElement();
                search.put(key, request.getParameter(key));
            }
            Query query = new Query();
            Criteria criteria = new Criteria();
            criteria.and("upgradeList").exists(true);
            if (!StringUtils.isBlank(search.get("mobile")))
                criteria.and("mobile").is(search.get("mobile"));
            if (!StringUtils.isBlank(search.get("payStatus")))
                criteria.and("payStatus").is(Integer.parseInt(search.get("payStatus")));
    
            if (!StringUtils.isBlank(search.get("upgradeStatus"))) {
            	if("0".equals(search.get("upgradeStatus"))) {
            		  criteria.orOperator(Criteria.where("upgradeStatus").exists(false), Criteria.where("upgradeStatus").is(0));
            	}else {
                criteria.and("upgradeStatus").is(Integer.parseInt(search.get("upgradeStatus")));
            	}
            } 
       
            if (!StringUtils.isEmpty(search.get("beginTime"))
                    || !StringUtils.isEmpty(search.get("endTime"))) {
                criteria = criteria.and("createDate");
                if (!StringUtils.isEmpty(search.get("beginTime")))
                    criteria.gte(DateUtils.parse(search.get("beginTime")));
                if (!StringUtils.isEmpty(search.get("endTime")))
                    criteria.lte(DateUtils.parse(search.get("endTime")));
    
            }
            query.addCriteria(criteria);
            query.with(new Sort(Sort.Direction.DESC, "createDate"));
            List<Order> list = mongoTemplate.find(query, Order.class);
            exportProductUpgradeOrder(list, response);
        }
    
    
    
    
    
    @Override
        public boolean exportProductUpgradeOrder(List<Order> orders, HttpServletResponse response) {
            try {
     
                ArrayList<String[]> contentsArrayList = new ArrayList<>();
                String[] titles = new String[]{
                        "订单编号", "订单名称", "唾液盒编号", "手机", "总金额", "在线支付",
                        "支付状态", "升级状态", "创建时间", "升级备注"};
    
                Boolean[] titleNumFlags = new Boolean[]{
                        false, false, false, false, true, true,
                        false, false, false, false};// 是否是数值型的标识
    
                contentsArrayList.add(titles);
                for (Order order : orders) {
                    String[] content = new String[titles.length];
                    content[0] = order.getId();
                    content[1] = order.getOrderName();
                    content[2] = order.getUpgradeList().get(0).getBarcode();
                    content[3] = order.getMobile();
                    content[4] = String.valueOf(order.getTotalMoney());
                    content[5] = String.valueOf(order.getPayMoney());
                    content[6] = order.getPayStatus() == Order.PAY_UNPAY ? "未付款" : "已付款";
                    content[7] = order.getUpgradeStatus() == 1 ? "已处理" : "未处理";
                    content[8] = order.getCreateDate();
                    content[9] = order.getUpgradeRemark();
                    contentsArrayList.add(content);
                }
                ExcelUtils.writeExcel(ExcelUtils.changeToArray(contentsArrayList), "导出", response, titleNumFlags);
                return true;
            } catch (Exception e) {
                e.printStackTrace();
            }
            return false;
        }





    ExcelUtils.class

    package com.mofang.util;
    
    import java.io.IOException;
    import java.io.OutputStream;
    import java.util.ArrayList;
    import java.util.Calendar;
    
    import javax.servlet.http.HttpServletResponse;
    
    import jxl.Workbook;
    import jxl.write.Label;
    import jxl.write.WritableSheet;
    import jxl.write.WritableWorkbook;
    import jxl.write.WriteException;
    
    /**
     * ExcelUtils 导出excel
     * 
     * @author joe
     * 
     */
    public class ExcelUtils {
    
        /**
         * 生成一个Excel文件
         * 
         * @param title 工作表的名称
         * @param titles 工作表的内容
         */
    
        public static String writeExcel(String[][] titles, String title,
                HttpServletResponse response, Boolean[] titleNumFlags)
                throws IOException {
            String fileName = title + Calendar.getInstance().getTimeInMillis();
            response.setContentType("application/vnd.ms-excel;charset=utf-8");
            response.setHeader("Content-Disposition", "attachment;filename="
                    + new String((fileName + ".xls").getBytes(), "iso-8859-1"));
            // 根据传进来的file对象创建可写入的Excel工作薄
            OutputStream os = response.getOutputStream();
            WritableWorkbook wwb = null;
            try {
                // 首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
    
                wwb = Workbook.createWorkbook(os);
            } catch (IOException e) {
                e.printStackTrace();
            }
            if (wwb != null) {
                // 创建一个可写入的工作表
                // Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置
                WritableSheet ws = wwb.createSheet(title, 1);
                jxl.write.NumberFormat nf = new jxl.write.NumberFormat("#0.00"); // 设置数字格式
                jxl.write.WritableCellFormat wcfN = new jxl.write.WritableCellFormat(
                        nf); // 设置表单格式
                // 下面开始添加单元格
                for (int row = 0; row < titles.length; row++) {
                    // System.out.println(row);
                    for (int j = 0; j < titles[row].length; j++) {
                        if (titleNumFlags[j]) {// 当数值型时先转换成double
                            try {
                                double titlesDoubleValue = Double
                                        .parseDouble(titles[row][j]);
                                ws = writeNumberToWs(ws, wcfN, row, j,
                                        titlesDoubleValue);
                            } catch (Exception notnum) {
                                String titlesStringValue = titles[row][j];
                                // 这里需要注意的是,在Excel中,j表示列,row表示行
                                ws = writeStringToWs(ws, row, j, titlesStringValue);
                            }
                        } else {
                            String titlesStringValue = titles[row][j];
                            // 这里需要注意的是,在Excel中,j表示列,row表示行
                            ws = writeStringToWs(ws, row, j, titlesStringValue);
                        }
                    }
                }
    
                try {
                    // 从内存中写入文件中
                    wwb.write();
                    // 关闭资源,释放内存
                    wwb.close();
                    os.flush();
                    os.close();
                } catch (IOException | WriteException e) {
                    //e.printStackTrace();
                }
            }
            return fileName;
        }
    
        private static WritableSheet writeNumberToWs(WritableSheet ws,
                jxl.write.WritableCellFormat wcfN, int row, int j,
                double titlesDoubleValue) {
            jxl.write.Number labelNF = new jxl.write.Number(j, row,
                    titlesDoubleValue, wcfN); // 格式化数值
            try {
                ws.addCell(labelNF);
            } catch (WriteException e1) {
                e1.printStackTrace();
            }
            return ws;
        }
    
        private static WritableSheet writeStringToWs(WritableSheet ws, int row,
                int j, String titlesStringValue) {
            Label labelC = new Label(j, row, titlesStringValue);
            try {
                // 将生成的单元格添加到工作表中
                ws.addCell(labelC);
            } catch (WriteException e) {
                e.printStackTrace();
            }
            return ws;
        }
    
        public static String[][] changeToArray(ArrayList<String[]> contentsArrayList) {
            String[][] contents = new String[contentsArrayList.size()][];
            for (int i = 0; i < contentsArrayList.size(); i++) {
                contents[i] = contentsArrayList.get(i);
            }
            return contents;
        }
    
    }
    










    桌面程序-swing弹出

    swing只会在服务器中弹出,多用于 桌面程序-----如果用在web中则 在页面点击时,选择框在服务器弹出。

    swing

    public static String writeExcel(String[][] titles, String title) {
    
    		String fileName = "";
    		JFileChooser dialog = new JFileChooser();
    		dialog.setDialogTitle("保存文件");
    		dialog.setFileSelectionMode(JFileChooser.FILES_ONLY);
    		FileSystemView fsv = FileSystemView.getFileSystemView();
    		System.out.println(fsv.getHomeDirectory()); // 得到桌面路径
    		dialog.setCurrentDirectory(fsv.getHomeDirectory()); // 设置默认保存路径为桌面路径
    		// dialog.setDialogType(JFileChooser.SAVE_DIALOG);
    		dialog.setSelectedFile(new File("订单列表"
    				+ Calendar.getInstance().getTimeInMillis() + ".xls")); // 设置默认文件名
    		dialog.setFileFilter(new TextFileFilter("*.xls", "文本文档(*.xls)"));
    		int result = dialog.showSaveDialog(dialog);
    		if (result == JFileChooser.APPROVE_OPTION) {
    			File file = dialog.getSelectedFile();
    			fileName = file.getAbsolutePath(); // 得到文件全名
    
    			WritableWorkbook wwb = null;
    			try {
    				// 首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
    
    				wwb = Workbook.createWorkbook(new File(fileName));
    			} catch (IOException e) {
    				e.printStackTrace();
    			}
    			if (wwb != null) {
    				// 创建一个可写入的工作表
    				// Workbook的createSheet方法有两个参数,第一个是工作表的名称,第二个是工作表在工作薄中的位置
    				WritableSheet ws = wwb.createSheet(title, 1);
    
    				// 下面开始添加单元格
    				for (int row = 0; row < titles.length; row++) {
    					// System.out.println(row);
    					for (int j = 0; j < titles[row].length; j++) {
    						// 这里需要注意的是,在Excel中,第一个参数表示列,第二个表示行
    						Label labelC = new Label(j, row, titles[row][j]);
    
    						try {
    							// 将生成的单元格添加到工作表中
    							ws.addCell(labelC);
    						} catch (RowsExceededException e) {
    							e.printStackTrace();
    						} catch (WriteException e) {
    							e.printStackTrace();
    						}
    					}
    				}
    
    				try {
    					// 从内存中写入文件中
    					wwb.write();
    					// 关闭资源,释放内存
    					wwb.close();
    				} catch (IOException e) {
    					e.printStackTrace();
    				} catch (WriteException e) {
    					e.printStackTrace();
    				}
    			}
    		}
    		return fileName;
    	}



    展开全文
  • JAVA弹出下载

    千次阅读 2011-10-12 09:26:23
    /**  * 向客户端下载文件弹出下载.  *  * @param response  * response  * @param file  * 需要下载的文件  * @param isDel  *
  • Java弹出目录选择文件操作

    千次阅读 2017-01-23 16:12:00
    1. 如何弹出目录选择; 2. 判断以数字开头,中间含义数字的正则表达式; 3. 计数文件夹中的文件个数; 4. 如何对文件重命名
  • 在实现导出文件时,弹出下载主要是设置成文件流 stream类型的response,浏览器就会识别,然后弹出下载让用户选择保存路径。 这里总结三个方式: web-struts框架中弹出 其中设置的关键是:   ...
  • Web弹出框实例

    2013-07-11 16:22:22
    Web弹出框实例,简单易懂,里面拥有例子以及开发需要的js文件
  • java中使用输出流下载文件弹出打开保存   try { String file= request.getRealPath("项目中文件路径"); InputStream is = new FileInputStream(file); response.reset(); // 必要地清除...
  • False 多上传 弹出框可以选择多个文件 SWF文件
  • java web 下载文件 浏览器弹出下载

    万次阅读 2016-06-15 17:43:32
    前端js文件:window.open("feeWarning/excelQfAll");//访问后台springmvc中的excelQfAll方法得到下载...后台java文件: public void excelQfAll(HttpServletRequest request,HttpServletResponse response) { String f
  • 修改前: response.setHeader("Content-Disposition", "attachment; filename=" +shortFileName); ... response.setHeader("Content-Disposition", "attachment; filename=" + new String(shortFileName.getB
  • fileChoose的完整demo,文件选择和下载,纯后台代码生成,附源码!
  • 首先先写下载包的仓库地址,找到你build.gradle的第一个文件>-allprojects。加入红色圆圈代码。 maven { url 'https://jitpack.io' } 其次,加入QMUI包 代码如下: implementation 'com.qmu
  • java 文件下载浏览器没有弹出下载

    千次阅读 2019-02-23 16:39:23
    原因是我在前端用了ajax请求,后端用了二进制流来实现,而ajax不支持流形式,改成了表单提交解决。
  • // 打开到此 URL引用的资源的通信链接(如果尚未建立这样的连接) httpURLConnection.connect(); // 建立链接从请求中获取数据 BufferedInputStream bin = new BufferedInputStream(httpURLConnection....
  • 如图,我们按debug或者RUN按钮时,出现这样的问题。其实是系统的环境变量没设置好。只要我们把JAVAHOME,PATH和CLASSPATH中的JAVA路径全部删除,并重启。该问题就会立即得到解决。
  • Android 多种简单的弹出框样式设置

    千次阅读 2016-11-02 18:07:57
    简介这是一个基于AlertDialog和Dialog这两个类封装的多种弹出框样式,其中提供各种简单样式的弹出框使用说明。同时也可自定义弹出框。项目地址:http://www.github.com/jjdxmashl/jjdxm_dialogui特性1.使用链式开发...
  • //设置下载弹出框 String csvEncoding = "UTF-8"; response.setCharacterEncoding(csvEncoding); response.setContentType("text/csv;charset=" + csvEncoding); response.setHeader("Content-Disposition...
  • 简单实用的文件路径选择,可直接复制实用,希望对大家有帮助!
  • servlet文件实现弹出框

    2019-12-31 11:00:19
    PrintWriter out = response.getWriter(); out.print(“”); 参考: https://blog.csdn.net/l18848956739/article/details/62226364
  • Java确认弹出

    千次阅读 2018-08-01 17:18:00
    最近在工作中,有个小需求是上传文件到TC中,如果文件在TC中存在,就需要弹出选择让客户进行选择.如下图: 为了实现上述效果,可以有下列几种解决办法. 1)办法1:和线程没有关联 1 int showConfirmDialog = ...
  • 今天在pdf和excel中都实现了在浏览器弹出下载 将之前在网上查找的生成excel表格代码稍微修改下: public class CreateSimpleExcelToDisk { /** * @功能:手工构建一个简单格式的Excel */ private static ...
  • Android自定义弹出框

    2020-09-16 17:35:17
    在开发Android项目的过程中,弹出框真的是我们的常见的一种互动式窗体,但是Android系统自带的弹出框往往都不能满足我们的需要,大多数的时候需要我们自定义一种更漂亮的窗体来来展示给用户。 接下来是我很久之前用...
  • 在web开发中,有一个经典的功能,就是数据的导入导出。特别是数据的导出,在生产管理或者财务系统中用的非常普遍,因为这些系统经常要做一些报表打印的... 呵呵,首先我们来导出EXCEL格式的文件吧。现在主流的操作Ex...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 116,657
精华内容 46,662
关键字:

java打开文件的弹出框

java 订阅