精华内容
下载资源
问答
  • python将文件夹中jpg的绝对路径写入txt文档
    2021-11-03 16:01:28

    python将文件夹中jpg的绝对路径写入txt文档

    具体实现代码如下

    [转载请注明出处]https://blog.csdn.net/qq_22290797/article/details/121123419。

    # -*- coding: utf-8 -*- 
    # @Time :  
    # @Author : 
    # @Site :  将图片的地址写入到txt中
    # @File : jpg2txt.py 
    # @Software: PyCharm
    
    import os
    
    
    def writejpg2txt(images_path, txt_name):
        # 打开图片列表清单txt文件
        file_name = open(txt_name, "w")
        # 将路径改为绝对路径
        images_path = os.path.abspath(images_path)
        # 查看文件夹下的图片
        images_name = os.listdir(images_path)
    
        count = 0
        # 遍历所有文件
        for eachname in images_name:
            # 按照需要的格式写入目标txt文件
            file_name.write(os.path.join(images_path,eachname) + '\n')
            count += 1
        print('生成txt成功!')
        print('{} 张图片地址已写入'.format(count))
        file_name.close()
    
    
    if __name__ == "__main__":
    
        # 图片存放目录
        images_path = './JPEGImages/'
        # 生成图片txt文件命名
        txt_name = './val.txt'
        txt_name = os.path.abspath(txt_name)
        if not os.path.exists(txt_name):
            os.system(r"touch {}".format(txt_name)) #调用系统命令行来创建文件
        #将jpg绝对地址写入到txt中
        writejpg2txt(images_path, txt_name)
    
    更多相关内容
  • 从Oracle 7.3开始,传统的exp导出程序提供两种的导出路径方式,一个是传统路径导出(Conventional Path Export),一个是直接路径导出(Direct Path Export)。本文即是因最近客户的传统导入导出性能问题对此进行...

    Oracle 传统的Export与Import依旧被保留到11g,而且9i与10g有很多依旧使用Export与Import方式进行备份与恢复的企业。从Oracle 7.3开始,传统的exp导出程序提供两种的导出路径方式,一个是传统路径导出(Conventional Path Export),一个是直接路径导出(Direct Path Export)。本文即是因最近客户的传统导入导出性能问题对此进行描述。

    1、两者的差异

    a、 Conventional path Export

    传统路径模式使用SQL SELECT语句抽取表数据。数据从磁盘读入到buffer cache缓冲区中,行被转移到评估缓冲区。

    在此之后根据SQL表达式,将记录返回给导出客户端,然后写入到dump文件。

    b、Direct path Export

    直接导出模式,数据直接从磁盘中读取到导出session的PGA中,行被直接转移到导出session的私有缓冲区,从而跳过SQL命令处理层。

    避免了不必要的数据转换。最后记录返回给导出客户端,写到dump文件。

    2、性能问题

    a、直接路径导出方式比传统路径方式具有更优的性能,速度更快,因为绕过了SQL命令处理部分。

    b、直接路径导出方式支持RECORDLENGTH参数(最大为64k),该参数值通常建议设置为系统I/O或者DB_BLOCK_SIZE的整数倍

    c、影响直接路径导出的具体因素(DB_BLOCK_SIZE,列的类型,I/O性能,即数据文件所在的磁盘驱动器是否单独于dump文件所在的磁盘驱动器)

    d、无论是直接路径导出还是传统路径导出产生的dump,在使用imp方式导入时,会耗用相同的时间

    3、简单示例

    > exp system/manager FILE=exp_full.dmp LOG=exp_full.log \

    FULL=y DIRECT=y RECORDLENGTH=65535

    > imp system/manager FILE=exp_full.dmp LOG=imp_full.log \

    FULL=y RECORDLENGTH=65535

    4、直接路径导出的限制

    a、直接路径导出不支持交互模式

    b、不支持表空间传输模式(即TRANSPORT_TABLESPACES=Y不被支持),支持的是FULL,OWNER,TABLES导出方式

    c、不支持QUERY查询方式,如exp scott/tiger TABLES=emp QUERY=\"WHERE job=\'SALESMAN\' \" 不被支持

    d、直接路径导出使用RECORDLENGTH设置一次可以导出数据的量,取代传统路径使用buffer的设置

    e、直接路径导出要求NLS_LANG环境参数等于数据库字符集,负责收到EXP-41警告及EXP-0终止错误

    5、演示两种方式性能差异

    a、传统路径导出与直接路径导出性能对比

    #下面直接进行日志对比

    robin@SZDB:/u02/database/SYBO2SZ/BNR/dump> more dump1.log

    Start to dump at Fri Jun 21 15:32:57 CST 2013 ....

    Connected to: Oracle Database 10g Release 10.2.0.3.0 - 64bit Production

    Export done in US7ASCII character set and UTF8 NCHAR character set

    server uses UTF8 character set (possible charset conversion)

    About to export specified tables via Conventional Path ...#这个地方是关键描述信息,指明了导出方式

    . . exporting table          TRADE_CLIENT_TBL_ARC    1395093 rows exported #数据139万行

    Export terminated successfully with warnings.

    End dump at Fri Jun 21 15:34:31 CST 2013 .    #耗用时间15:34:31-15:32:57=不到2min

    # Author : Robinson

    robin@SZDB:/u02/database/SYBO2SZ/BNR/dump> more dump2.log

    Start to dump at Fri Jun 21 15:37:13 CST 2013 ....

    Connected to: Oracle Database 10g Release 10.2.0.3.0 - 64bit Production

    Export done in US7ASCII character set and UTF8 NCHAR character set

    server uses UTF8 character set (possible charset conversion)

    About to export specified tables via Direct Path ...#这个地方是关键描述信息,指明了导出方式

    . . exporting table          TRADE_CLIENT_TBL_ARC    1395093 rows exported

    Export terminated successfully with warnings.

    End dump at Fri Jun 21 15:37:30 CST 2013 .  #耗用时间15:37:30-15:37:13 =17s

    b、演示对lob数据类型的支持

    scott@SYBO2SZ> create table scott.testtab2 (nr number, txt clob);

    Table created.

    scott@SYBO2SZ> declare

    2  x varchar2(50);

    3  begin

    4  for i in 1..5000 loop

    5  x := 'This is a line with the number: ' || i;

    6  insert into scott.testtab2 values(i,x);

    7  commit;

    8    end loop;

    9  end;

    10  /

    PL/SQL procedure successfully completed.

    scott@SYBO2SZ> select count(*) from testtab2;

    COUNT(*)

    ----------

    5000

    robin@SZDB:/u02/database/SYBO2SZ/BNR/dump> exp scott/tiger file=exp_testtab2.dmp tables=scott.testtab2 direct=y

    Export: Release 10.2.0.3.0 - Production on Fri Jun 21 11:56:37 2013

    Copyright (c) 1982, 2005, Oracle.  All rights reserved.

    Connected to: Oracle Database 10g Release 10.2.0.3.0 - 64bit Production

    Export done in US7ASCII character set and UTF8 NCHAR character set

    server uses UTF8 character set (possible charset conversion)

    About to export specified tables via Direct Path ...

    Table TESTTAB2 will be exported in conventional path.

    . . exporting table                      TESTTAB2      5000 rows exported

    Export terminated successfully without warnings.

    0b1331709591d260c1c78e86d0c51c18.png

    展开全文
  • Java POI 超简洁的导出excel以及复制某一路径下的所有文件到指定路径 package com.qiya.springboot.controller; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; ...

    Java POI 超简洁的导出excel到指定路径 以及复制导出路径下的所有文件的excel到指定路径

    package com.qiya.springboot.controller;
    
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.text.SimpleDateFormat;
    import java.util.Date;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.apache.poi.hssf.usermodel.HSSFCell;
    import org.apache.poi.hssf.usermodel.HSSFCellStyle;
    import org.apache.poi.hssf.usermodel.HSSFDataFormat;
    import org.apache.poi.hssf.usermodel.HSSFFont;
    import org.apache.poi.hssf.usermodel.HSSFRichTextString;
    import org.apache.poi.hssf.usermodel.HSSFRow;
    import org.apache.poi.hssf.usermodel.HSSFSheet;
    import org.apache.poi.hssf.usermodel.HSSFWorkbook;
    import org.apache.poi.ss.usermodel.BorderStyle;
    import org.apache.poi.ss.usermodel.FillPatternType;
    import org.apache.poi.ss.usermodel.HorizontalAlignment;
    import org.apache.poi.ss.usermodel.IndexedColors;
    import org.apache.poi.ss.usermodel.VerticalAlignment;
    import org.apache.poi.ss.util.CellRangeAddress;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.jdbc.core.JdbcTemplate;
    import org.springframework.web.bind.annotation.PostMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    @RestController
    public class ExportController {
    	// 下载文件的存放路径
    	private static final String rootFilePath = "F:/exportByJava/";
    	
    	@Autowired
    	private JdbcTemplate jdbcTemplate;
    	
    	/**
    	 * @return expResult
    	 * "/" == "\\"
    	 * 
    	 */
    	@RequestMapping("/exportUsers")
    	public boolean exportUsers(HttpServletRequest request, HttpServletResponse response) {
    		boolean expResult = false;
    		try {
    			HSSFWorkbook workbook = new HSSFWorkbook();
    			HSSFSheet sheet1 = workbook.createSheet("sheet1");
    			List<Map<String, Object>> usersList = jdbcTemplate
    					.queryForList("SELECT u.id,u.userName,u.userAge,u.userAddress FROM user u");
    			// 设置列宽
    			sheet1.setColumnWidth(0, 30*256);
    			// 合并单元格   参数说明:1:开始行 2:结束行  3:开始列 4:结束列
    			sheet1.addMergedRegion(new CellRangeAddress(0,0,0,3));
    			
    			String[] headers = {"ID", "用户名", "年龄", "地址"};
    			HSSFCellStyle style = workbook.createCellStyle();
    			style.setDataFormat(HSSFDataFormat.getBuiltinFormat("m/d/yy h:mm:ss"));
    			HSSFFont font = workbook.createFont();
    			font.setBold(true);
    			style.setFont(font);
    			style.setAlignment(HorizontalAlignment.CENTER);
    			style.setVerticalAlignment(VerticalAlignment.CENTER);
    			// 下两行共同构成了背景色
    			style.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
    			style.setFillPattern(FillPatternType.SOLID_FOREGROUND);
    			style.setBorderTop(BorderStyle.THIN);
    			
    			// 第一行
    			HSSFRow row0 = sheet1.createRow(0);
    			HSSFCell row0cell0 = row0.createCell(0);
    			HSSFRichTextString text = new HSSFRichTextString("用户表");
    			row0cell0.setCellValue(text);
    			row0cell0.setCellStyle(style);
    			
    			// 第二行
    			HSSFRow row1 = sheet1.createRow(1);
    			for(int i=0;i<headers.length;i++){
    				HSSFCell cell = row1.createCell(i);
    				HSSFRichTextString text2 = new HSSFRichTextString(headers[i]);
    				cell.setCellValue(text2);
    				cell.setCellStyle(style);
    			}
    			
    			// 第三行及以后
    			int rowNum = 2;
    			for(Map<String, Object> uMap : usersList){
    				int rowNumCellN = 0;
    				HSSFRow rowRowNum = sheet1.createRow(rowNum);
    				for(String uMapKey : uMap.keySet()) {
    					for(;rowNumCellN < uMap.size();) {
    						rowRowNum.createCell(rowNumCellN).setCellValue(String.valueOf(uMap.get(uMapKey)));
    						rowNumCellN++;
    						break;
    					}
    				}
    				rowNum++;
    			}			
    			SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
    			SimpleDateFormat formatToday = new SimpleDateFormat("yyyyMMdd");
    			String date = format.format(new Date());			
    			String fileName = date+"_用户表.xls";
    			isDirExist(rootFilePath+formatToday.format(new Date()));
    			FileOutputStream outputStream = new FileOutputStream(rootFilePath+formatToday.format(new Date())+"/"+fileName);
    			workbook.write(outputStream); // 写入磁盘
    			outputStream.close();
    			workbook.close();
    			expResult = true;
    		} catch (Exception e) {
    			expResult = false;
    			e.printStackTrace();
    		}
    		return expResult;
    	}
    	
    	/**
    	 * @return 针对window.locatin.hef访问导出方法无法接收导出结果,
    	 * 		此方法用来调用exportUsers以显示导出结果,前台以ajax调用此方法
    	 * */
    	@PostMapping("/showExpRes")
    	public Map<String, Object> showExpRes(HttpServletRequest request,HttpServletResponse response) {
    		boolean res = exportUsers(request, response);
    		Map<String, Object> map = new HashMap<>();
    		map.put("res", res);
    		return map;
    	}
    	
    	/**
    	 * @return map
    	 * */
    	@PostMapping("/mvFile")
    	public Map<String, Object> mvFile(HttpServletRequest request) {
    		// windows中是反斜杠,java中是正斜杠  
    		// 最好不要用get方式传带路径的参数,避免很多错误
    		String fileDir = request.getParameter("fileDir");
    		System.out.println(fileDir);
    		Map<String, Object> resMap = new HashMap<>();
    		SimpleDateFormat formatToday = new SimpleDateFormat("yyyyMMdd");
    		// 待移动的文件夹
    		File file = new File(rootFilePath+formatToday.format(new Date()));
    		File[] fileArr = file.listFiles();
    		if(fileArr == null) {
    			return null;
    		}
    		try {
    			for(File mvfile: fileArr) {
    				FileInputStream in = new FileInputStream(mvfile);
    				FileOutputStream out = new FileOutputStream(new File(fileDir+"/"+mvfile.getName()));
    				byte[] buff = new byte[1024]; // 1kb = 1024Byte
    				System.out.println("移动的文件:"+fileDir+"/"+mvfile.getName());
    				int n = 0;
    				while((n = in.read(buff)) != -1) {
    					out.write(buff, 0, n);
    				}
    				out.flush();
    				in.close();
    				out.close();
    			}
    			resMap.put("success", "true");
    		} catch (Exception e) {
    			resMap.put("success", "false");
    			e.printStackTrace();
    		}		
    		return resMap;
    	}
    	
    	/**
    	 * @param 当前文件夹路径
    	 * */
    	public void isDirExist(String fileDir) {
    		File file = new File(fileDir);
    		if(!file.exists()) {
    			file.mkdir();
    		}
    	}
    	
    } 
    
    

    html只用看导出部分就行。。。

    <html>
    <head>
    <meta charset="UTF-8">
    <link rel="stylesheet" type="text/css" href="css/bootstrap.min.css">
    <link rel="stylesheet" type="text/css" href="css/bootstrap-table.min.css">
    <!-- jQuery文件。务必在bootstrap.min.js 之前引入 -->
    <script type="text/javascript" src="js/jquery-3.1.1.min.js"></script>
    <!-- popper.min.js 用于弹窗、提示、下拉菜单 -->
    <script type="text/javascript" src="js/bootstrap.min.js"></script>
    <script type="text/javascript" src="js/bootstrap-table.js"></script>
    <script type="text/javascript" src="js/bootstrap-table-zh-CN.min.js"></script>
    
    </head>
    <body>
    <div class="container">
    	
    	<!-- 信息框 -->	
    	<div class="form-group">
    		<button class="btn btn-success" id="heroInfo" 
    		title="详细信息" data-content="女 23岁" data-placement="bottom"></button>
    	</div><!-- 结束信息框 -->
    	
    	
    	<div id="toolbar" class="btn-group">
    		<button id="btn_add" type="button" class="btn btn-default" onclick="openAddModel()" >
                	<span class="glyphicon glyphicon-plus" aria-hidden="true"></span>新增
             </button>
             <button id="btn_edit" type="button" class="btn btn-default" onclick='updateUser()'>
                 <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>修改
             </button>
             <button id="btn_delete" type="button" class="btn btn-default" onclick='delUser()'>
                 <span class="glyphicon glyphicon-remove" aria-hidden="true"></span>删除
             </button>
             <button type="button" class="btn btn-default" onclick="exportUsers()">            
                 <span class="glyphicon glyphicon-export" aria-hidden="true"></span>导出
             </button>             
        </div>
        <div style="float:right;margin-top: 10px;">
             <span><input type="text" id="unameCon" placeholder="请输入用户名进行查找(输入全名搜索速度更快哦!)"
             	style="width:300px; height: 34px;font-size: 12px;vertical-align:middle;border-radius:  4px;border: solid 1px #D0CDC7;" />
             </span>
             <button id="btn_search" type="button" class="btn btn-default" style="margin-left:0px" onclick="searchByCon()">
    	         	<span class="glyphicon glyphicon-search" aria-hidden="true"></span>搜索
    	     </button>
             	<button id="btn_reset" type="button" class="btn btn-default">
             	<span class="glyphicon glyphicon-refresh" aria-hidden="true"></span>重置
             </button> 
         </div> 
    	         
        <table id="allUsers"></table>
    	
    	<!-- 修改单个用户模态框 -->
    	<div class="modal fade" id="openUserInfoModal" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    		<div class="modal-dialog">
    			<div class="modal-content">
    				<div class="modal-header">
    					 <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
    					 <h4 class="modal-title" id="myModalLabel">用户信息</h4>
    				</div>
    				<div class="modal-body">
    					<div class='table table-condensed'>
    						<div style="display:none;"><input type="text" name="id" id="uid" /></div>
    						<div class="form-group">用户名:<input type="text" name="name" id="unameModal" /></div>
    						<div class="form-group" id="unaemErrorMsgModal"></div>
    						<div class="form-group">&nbsp;&nbsp;&nbsp;&nbsp;龄:<input type="number" name="age" id="uageModal" /></div>
    						<div class="form-group" id="uageErrorMsgModal"></div>
    						<div class="form-group">&nbsp;&nbsp;&nbsp;&nbsp;址:<input type="text" name="address" id="uaddressModal" /></div>
    						<div class="form-group" id="uaddressErrorMsgModal"></div>
    					</div>
    				</div>
    				<div class="modal-footer">
    					<button type="button" class="btn btn-default" onclick="saveInfo()">保存</button>
    	                <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
                	</div>
    			</div>
    		</div>
    	</div> <!-- 结束单个用户信息框修改 -->
    </div>
    <div>
    	<button class="btn btn-info" onclick="mvFile()">移动excel到指定目录</button>
    	<input type = "text" id="filePath" style="width:300px; height: 34px;font-size: 12px;vertical-align:middle;border-radius:  4px;border: solid 1px #D0CDC7;" placeholder = "请填写存放路径"/>
    	<div id="showUserByPermission" style="width: 500px; margin-left: 100px;"></div>
    </div>
    <script>
    	$(function () {
    		doSearch();
    		$("#heroInfo").popover({
    			trigger: 'focus'
    		});
    	});
    	
    	function delUser(){
    		// 获取curPage=>redis
    		var page = $("#allUsers").bootstrapTable("getPage");
    		var users = $("#allUsers").bootstrapTable('getSelections');
    		if(users.length==0){
    			alert("请选择要删除的行!");
    			return;
    		}
    		var ids = "";
    		for(var i=0;i<users.length;i++){
    			if(i==users.length-1){
    				ids += users[i].id;
    			}else{
    				ids += users[i].id+"#";
    			}			
    		}
    		$.ajax({
    			url:"/nianyu/user/delUser?curPage="+page.pageNumber,
    			type:"post",
    			dataType:"json",
    			data:{
    				"ids":ids
    			},
    			success:function(data){		
    				var delFailCount = data.delFailCount;
    				var delSuccessCount= data.delSuccessCount;
    				var n = delSuccessCount-delFailCount;
    				if(delSuccessCount>0){
    					alert("删除成功!"+"删除成功"+delSuccessCount+"条!"+"删除失败"+delFailCount+"条!"); 
    					$("#allUsers").bootstrapTable('refresh');
    				}else{
    					alert("删除失败!"+"删除成功"+delSuccessCount+"条!"+"删除失败"+delFailCount+"条!");
    					$("#allUsers").bootstrapTable('refresh');
    				}
    			}
    		});
    		
    	}
    	
    	function updateUser(){
    		var users = $("#allUsers").bootstrapTable('getSelections');
    		if(users.length==0){
    			alert("请选择要修改的行!");
    			return;
    		}else if(users.length>1){
    			alert("不能一次修改多行!");
    			return;
    		}else{
    			$('#openUserInfoModal').modal("show");
    			// 判断是否进入修改的参数,很重要,困扰了两个多小时
    			istate = 0;
    			$.ajax({
    				url:"/nianyu/user/queryUserInfo?id="+users[0].id,
    				type:"post",
    				dataType:"json",
    				success:function(data){							
    					var user = data.res;
    					$('#uid').val(user.id);
    					$('#unameModal').val(user.userName);
    					$('#uageModal').val(user.userAge);
    					$('#uaddressModal').val(user.userAddress);
    				}
    			});
    		}		
    		
    	}
    	
    	function openAddModel(){
    		// 判断是否进入新增的参数,很重要,困扰了两个多小时
    		istate = 1;
    		$('#unameModal').val("");
    		$('#uageModal').val("");
    		$('#uaddressModal').val("");
    		$('#openUserInfoModal').modal("show");
    	}
    	
    	function saveInfo(){
    		// 获取curPage=>redis
    		var page = $("#allUsers").bootstrapTable("getPage");
    		$("#unaemErrorMsgModal").empty();
    		$("#uageErrorMsgModal").empty();
    		$("#uaddressErrorMsgModal").empty();
    		var uid = $('#uid').val();
    		var unameModal = $('#unameModal').val();
    		
    		var uageModal = $('#uageModal').val();
    		var uaddressModal = $('#uaddressModal').val();
    		if(!unameModal){
    			str = "<div class='alert alert-danger'>错误!用户名不能为空!</div>";
    			$("#unaemErrorMsgModal").append(str); 
    			return;
    		}else if(!uageModal){
    			str = "<div class='alert alert-danger'>错误!年龄不能为空!</div>";
    			$("#uageErrorMsgModal").append(str);
    			return;
    		}else if(!uaddressModal){
    			str = "<div class='alert alert-danger'>错误!地址不能为空!</div>";
    			$("#uaddressErrorMsgModal").append(str);
    			return;
    		}		
    		if(istate==1){
    			$.ajax({
    				url:"/nianyu/user/addUser?curPage="+page.pageNumber,
    				type:"post",
    				dataType:"json",
    				data:{
    					"userName":unameModal,
    					"userAge":uageModal,
    					"userAddress":uaddressModal
    				},
    				success:function(data){						
    					$("#allUsers").bootstrapTable('refresh');
    					$('#openUserInfoModal').modal('hide');
    					if("success"==data.res){
    						alert("保存成功!");
    					}else{
    						alert("保存失败!")
    					}
    				}
    			});
    		}else{			
    			$.ajax({
    				url:"/nianyu/user/updateUserInfo?curPage="+page.pageNumber,
    				type:"post",
    				dataType:"json",
    				data:{
    					"id":uid,
    					"userName":unameModal,
    					"userAge":uageModal,
    					"userAddress":uaddressModal		
    				},
    				success:function(data){	
    					$('#uid').val('');
    					$("#allUsers").bootstrapTable('refresh');
    					$('#openUserInfoModal').modal('hide');
    					if("success"==data.res){
    						alert("修改成功!");
    					}else{
    						alert("修改失败!")
    					}
    				}
    			});
    		}
    		
    	}
    	
    	// javascript加载bootstraptable
    	function doSearch(){
    		$("#allUsers").bootstrapTable({ 	// 对应table标签的id
    		      url: "/nianyu/user/queryUserInfoByPageRedis", 		  // 获取表格数据的url
    		      method: 'get',                      //请求方式(*)
    		      toolbar: '#toolbar',                //工具按钮用哪个容器
    		      striped: true,                      //是否显示行间隔色
    		      cache: false,                       //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
    		      pagination: true,                   //是否显示分页(*)
    		      sortable: false,                     //是否启用排序
    		      sortOrder: "asc",                   //排序方式
    		      sidePagination: "server",           //分页方式:client客户端分页,server服务端分页(*)
    		      pageNumber:1,                       //初始化加载第一页,默认第一页
    		      pageSize: 10,                       //每页的记录行数(*)
    		      pageList: [10],        //可供选择的每页的行数(*)
    		      search: false,                       //是否显示表格搜索,此搜索是客户端搜索,不会进服务端,所以,个人感觉意义不大
    		      strictSearch: false,
    		      showColumns: false,                  //是否显示所有的列
    		      showRefresh: false,                  //是否显示刷新按钮
    		      minimumCountColumns: 2,             //最少允许的列数
    		      clickToSelect: true,                //是否启用点击选中行
    		      height: 543,                        //行高,如果没有设置height属性,表格自动根据记录条数觉得表格高度
    		      uniqueId: "ID",                     //每一行的唯一标识,一般为主键列
    		      showToggle:false,                    //是否显示详细视图和列表视图的切换按钮
    		      cardView: false,                    //是否显示详细视图
    		      detailView: false,                   //是否显示父子表	
    		      queryParams: function (params) {
    		    	  return {
    		              pageSize: params.limit, // 每页要显示的数据条数
    		              offset: params.offset, // 每页显示数据的开始行号
    		              sort: params.sort, // 要排序的字段
    		              sortOrder: params.order, // 排序规则
    		              userName:$("#unameCon").val(), 
    		          }
    		      },
    		      
    		      columns: [
    		          {
    		              checkbox: true, // 显示一个勾选框
    		              align: 'center' // 居中显示
    		          }, {
    		              field: 'number', 
    		              title: '序号',
    		              align: 'center', 
    		              valign: 'middle',
    		              formatter: function(value, row, index){
    		            	  // 在bootstrap-table.js 中增加getPage(),
    		            	  var page = $("#allUsers").bootstrapTable("getPage");
    		  				  return page.pageSize * (page.pageNumber - 1) + index + 1;
    		              }
    		          }, {
    		              field: 'id', 
    		              title: 'ID', // 表格表头显示文字
    		              align: 'center', // 左右居中
    		              valign: 'middle' // 上下居中
    		          }, {
    		              field: 'userName', // 返回json数据中的name
    		              title: '用户名', // 表格表头显示文字
    		              align: 'center', // 左右居中
    		              valign: 'middle' // 上下居中
    		          }, {
    		              field: 'userAge',
    		              title: '年龄',
    		              align: 'center',
    		              valign: 'middle'
    		          }, {
    		              field: 'userAddress',
    		              title: '地址',
    		              align: 'center',
    		              valign: 'middle'
    		          }/*  {
    		              title: "操作",
    		              align: 'center',
    		              valign: 'middle',
    		              width: 160, // 定义列的宽度,单位为像素px
    		              formatter: function (value, row, index) {
    		                  return '<button class="btn btn-primary btn-sm" onclick="del(\'' + row.stdId + '\')">删除</button>';
    		              }
    		          } */
    		      ],
    		      onLoadSuccess: function(){  //加载成功时执行
    		            console.info("加载成功");
    		      },
    		      onLoadError: function(){  //加载失败时执行
    		            console.info("加载数据失败");
    		      }
    
    		})
    		
    	}	
    	
    	function exportUsers(){
    //		window.location.href = "/nianyu/exportUsers";
    		$.ajax({
    			url:"/nianyu/showExpRes",
    			type:"post",
    			dataType:"json",
    			success:function(data){	
    				if(data.res) {
    					alert("导出成功!");
    				}else {
    					alert("导出失败!");
    				}
    			}
    		});
    	}
    	
    	function searchByCon(){
    		if($('#unameCon').val().length > 0 ){
    			$("#btn_edit").attr('disabled',true);
    			$('#btn_delete').attr('disabled',true);
    			$("#allUsers").bootstrapTable('refresh');
    		}else{
    			$("#btn_edit").attr('disabled',false);
    			$('#btn_delete').attr('disabled',false);
    			$("#allUsers").bootstrapTable('refresh');
    		}
    		
    	}
    	
    	function mvFile() {
    		var fileDir = $("#filePath").val();
    		$.ajax({
    			url: "/nianyu/mvFile",
    			type:"post",
    			dataType:"json",
    			data:{
    				"fileDir":fileDir
    			},
    			success:function(data){
    				if("true" == data.success) {
    					alert("移动成功!");
    				}else {
    					alert("移动失败!");
    				}
    				
    			}
    			
    		})
    	}
    	
    </script>
    </body>
    </html>
    
    
    展开全文
  • 主要介绍了Java 批量文件压缩导出并下载到本地示例代码,实现思路首先要把zip流写入到http响应输出流中,再把excel的流写入zip流中,具体示例代码,大家通过本文学习吧
  • 运用python语言,由用户输入文件所在路径,获取该指定路径文件及文件夹,并写入到excel表格中
  • public void export( HttpServletResponse res) throws IOException {// 创建HSSFWorkbook对象(excel的文档对象)HSSFWorkbook wb = new HSSFWorkbook();// 建立新的sheet对象(excel的表单)HSSFSheet sheet = w...

    废话不多说,直接上代码--------->

    public void export( HttpServletResponse res) throws IOException {

    // 创建HSSFWorkbook对象(excel的文档对象)

    HSSFWorkbook wb = new HSSFWorkbook();

    // 建立新的sheet对象(excel的表单)

    HSSFSheet sheet = wb.createSheet("student");

    // 在sheet里创建第一行,参数为行索引(excel的行),可以是0~65535之间的任何一个

    HSSFRow row1 = sheet.createRow(0);

    // 创建单元格(excel的单元格,参数为列索引,可以是0~255之间的任何一个

    HSSFCell cell = row1.createCell(0);

    // 设置单元格内容

    cell.setCellValue("学生信息表");

    // 合并单元格CellRangeAddress构造参数依次表示起始行,截至行,起始列, 截至列

    sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 3));

    // 在sheet里创建第二行

    HSSFRow row2 = sheet.createRow(1);

    // 创建单元格并设置单元格内容

    row2.createCell(0).setCellValue("姓名");

    row2.createCell(1).setCellValue("班级");

    // 在sheet里创建第三行

    HSSFRow row3 = sheet.createRow(2);

    row3.createCell(0).setCellValue("花花");

    row3.createCell(1).setCellValue("一年级一班");

    //将excel的数据写入文件

    ByteArrayOutputStream fos = null;

    byte[] retArr = null;

    try {

    fos = new ByteArrayOutputStream();

    wb.write(fos);

    retArr = fos.toByteArray();

    } catch (FileNotFoundException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } catch (IOException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    } finally {

    try {

    fos.close();

    } catch (IOException e) {

    // TODO Auto-generated catch block

    e.printStackTrace();

    }

    }

    OutputStream os = res.getOutputStream();

    try {

    res.reset();

    res.setHeader("Content-Disposition", "attachment; filename=agent_book.xls");//要保存的文件名

    res.setContentType("application/octet-stream; charset=utf-8");

    os.write(retArr);

    os.flush();

    } finally {

    if (os != null) {

    os.close();

    }

    }

    }

    注意:此自定义弹出框方法不支持ajax调用,

    调用结果如下图:

    656b52d8e4a2bf85e2151c7c633907ab.png

    展开全文
  • 今天在同一个目录下做Release 9.2.0.6.0EXP导出,导了几个小表没问题,但是大点的上万条记录的表就有问题1:小表正常:GXdbC% exp c_perf/gxcperf@gxdbc file=testperf tables=c_perf_bsc_testExport: Release 9.2....
  • 取出数据库表中的内容写入文件,并将所有文件写入到压缩包最终导出到指定的某目录下//导出的压缩包格式 xxxx_dateDate currentTime = new Date();//格式化日期格式将yyyy-MM-dd HH:mm:ss 格式转换成xxxxxxxxx格式...
  • java 写入word文档导出

    千次阅读 2021-03-15 11:35:33
    //写入文件 InputStream fis = new BufferedInputStream(new FileInputStream(file.getPath())); byte[] buffer = new byte[fis.available()]; fis.read(buffer); fis.close(); response.reset(); SimpleDateFormat ...
  • 最近在做课程设计,需要通过js读取本地文件,并且获取本地文件路径,然后在搜寻了一些资料,在此分享记录一下.HTML5提供了一台API可以实现文件的读写,文件读取利用API是FileReader代码如下:读取本地文件Document//点击...
  • 这个案例提示我们:不能尽信expdp等导出文件备份,必须通过多重手段协同,全面保障数据安全。导入DMP文件时出现的错误大致如下:Import: Release 11.2.0.1.0 – Production on 星期日 12月 30 15...
  • sqlserver数据库用,指定查询语句执行后导出指定路径下生成csv文件
  • 主要介绍了JS基于FileSystemObject创建一个指定路径的TXT文本文件,涉及javascript使用ActiveXObject控件中FileSystemObject对象模型的基本技巧,具有一定参考借鉴价值,需要的朋友可以参考下
  • 我们都知道Hbase数据进容易,到想大批量导出有点难,这和hbase特性有关,它不支持大范围数据scan。下面介绍几种Hbase数据导出方式,和hbase数据批量写入方式。
  • 数据泵在写日志文件的时候,使用的是数据库字符集。如果客户端的环境变量NLS_LANG得值和数据库字符集不一致的话,日志中显示的表名称可能和终端屏幕输出的不一致。 数据泵内部使用的是包UTL_FILE,在和NLS转换的时候...
  • nodeJs文件写入导出操作:通过nodeJs内置的fs操作文件,获取本地json数据遍历格式化生成新的json数据导出到本地var fs = require('fs'); //文件模块var path = require('path'); //系统路径模块//获取本地json文件...
  •  var objSrc = new ActiveXObject("Shell.Application").BrowseForFolder(0, '请选择保存路径', 0, '');  if (objSrc != null) {  filePath = objSrc.Items().Item().Path;  if (filePath.charAt(0) == ':') { ...
  • 将特定路径下的文件目录结构写入EXCEL文件(PYTHON程序开发) 一、实现目标 二、代码实现过程 三、说明 工作中,为检查文件目录结构是否正确,或查找特定文件,需要清楚特定路径下的文件目录结构。为此,利用...
  • // 写入文件 ExcelWriter writer = ExcelUtil.getWriter(); writer.addHeaderAlias("sno", "学号"); writer.addHeaderAlias("name", "姓名"); writer.addHeaderAlias("age", "年龄"); writer.addHeaderAlias(...
  • -- EasyPoi文档处理工具 --> <dependency> <groupId>cn.afterturn</groupId> <artifactId>easypoi-base</artifactId> <version>4.4.0</version> </
  • Mac 用idea 创建springBoot 项目,启动时,报无法创建日志目录,我的目录是/usr/local/dir_samba/HC_logs,在某度上搜索了很多,基本都是进入恢复模式,关闭某个功能,然后创建目录,在赋予权限,觉得比较麻烦,其实...
  • 项目需要将指定路径下的图片名称保存成list.txt文件,面对这个需求,下意识觉得可以通过Python可以快速完成,而不用手工慢慢copy/paste。这个需求主要有两部分工作:(1)遍历指定路径下的所有文件名。(2)将文件名...
  • 问题:用户导出文件保存到桌面时,提示没有权限。原因是SAP安全设置里面此路径下权限没有。即C:/Users/用户名/Desktop/,如下图所示: 解决方法:
  • public void ExcelOp(DataGridView gdv,ArrayList selHead) { if (selHead.Count==0) { MessageBox.Show("没有数据,无法导出EXCEL!"); ret...
  • 开发环境:IDEA hadoop集群... "append"模式下可以在一个Excel文件中追加多个sheet .save(hdfsFilePath) // 要输出的HDFS文件路径 } } 需要注意:若数据中存在时间格式数据,需要指定时间格式,否则默认写入格式很蹩脚
  • python写的小程序,用于将一个文件夹下所有文件名(包括子文件夹中的文件)提取到excel中,每个子文件夹生成一个excel工作表

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 65,784
精华内容 26,313
关键字:

导出路径无法写入文件