精华内容
下载资源
问答
  • Excel行数限制

    2009-12-16 20:47:00
    今天想从Oracle导数据到Excel,发现行数只能到65000+,之后将新建Excel文件,先另存为网页格式,就可以得到一个18278(列)*262144(行)的表。 一般情况下非海量数据够用了,但是许多功能相应会被关闭。 ...

      今天想从Oracle导数据到Excel,发现行数只能到65000+,之后将新建Excel文件,先另存为网页格式,就可以得到一个18278(列)*262144(行)的表。  
          一般情况下非海量数据够用了,但是许多功能相应会被关闭。

    展开全文
  • 用datatable,倒入excel到sql。共一万多行数据,8000多导入还没问题,怎么再多就出错呢,就像找不到网页一样,也没有错误提示。 单独导入8000行后的数据,也没问题,可以确认excel数据格式没有问题。
  • bcprov-jdk jar包,到下面的网页里下载。 目前的 winzipaes_src_20110911.zip,官网推荐使用 bcprov-jdk15-146.jar http://www.bouncycastle.org/latest_releases.html   1. 使用示例(源码里的例子,没测试...

    [转:http://blog.csdn.net/lian_zhihui1984/article/details/6893119]

    由于工作需要,导出CSV功能,太大的话要分成多个,并且导出文件要压缩成带密码的zip。

    JAVA本身的ZIP输入输出流是支持多个文件的,但是没有设置密码功能。

    网上搜索了很久,最后选择使用开源的winzipaes。

    地址 http://code.google.com/p/winzipaes/

    下载它的source,自己编译生成jar。在编译时,要用到bcprov-jdk jar包,到下面的网页里下载。

    目前的winzipaes_src_20110911.zip,官网推荐使用bcprov-jdk15-146.jar

    http://www.bouncycastle.org/latest_releases.html

     

    1. 使用示例(源码里的例子,没测试过)

    压缩

     

    [java] view plaincopy
     
    1. File inFile;  
    2. File outFile;  
    3. ...  
    4. AESEncrypter encrypter = new AESEncrypterBC();  
    5. AesZipFileEncrypter enc = new AesZipFileEncrypter(outFile,encrypter);  
    6. try {  
    7.     enc.add(inFile, password);  
    8. finally {  
    9.     enc.close();  
    10. }  

     

     

    解压

     

    [java] view plaincopy
     
    1. AesZipFileDecrypter zipFile = new AesZipFileDecrypter( new File("doc/zipSpecificationAes.zip"), new AESDecrypterBC() );  
    2. ExtZipEntry entry = zipFile.getEntry( "zipSpecification.txt" );  
    3. zipFile.extractEntryWithTmpFile( entry, new File("doc/zipSpecification.txt"), "foo" );  

     

     

    2. 压缩多个文件时,有两个方法

    (1) 预先把多个文件压缩成zip,使用enc.addAll(inZipFile, password);方法。

    (2)循环调用enc.add(inFile, password);,每次用相同的密码

     

    3. 压缩包里的path

    使用add(File file, String password)方法,会把file的路径(绝对路径或相对路径,有创建file时决定)自动作为zip里的path。

    不想要路径或者想自己指定的话,使用add(File file, String password)方法。

     

    4. 不用inFile,通过流创建(省却创建临时文件,我就是用这个)

    使用add(String name, InputStream is, String password)方法。

     

    5. 我的导出CSV并带密码压缩代码(大体样子,不完全)

     

    [java] view plaincopy
     
    1. List<DTO> dtoList = getData();  
    2. OutputStream out = null;  
    3. AesZipFileEncrypter enc = null;  
    4. byte[] bom ={(byte0xEF,(byte0xBB,(byte0xBF};  
    5. try {  
    6. out = response.getOutputStream();  
    7. enc = new AesZipFileEncrypter(out, new AESEncrypterBC());  
    8. int totalRowNum = dtoList.size();  
    9. int rowNum = 0;  
    10. final int MAX_ROW_NUM = 1000;  
    11. int fileNum = 0;  
    12. String csvData = "";  
    13.   
    14. for (DTO dto : dtoList)  {  
    15.     rowNum++;  
    16.   
    17.     // edit csv data  
    18.     ...  
    19.       
    20.     if  (rowNum  % MAX_ROW_NUM == 0  ||   
    21.          rowNum == totalRowNum)  {  
    22.         // excel打开UTF乱码的对应  
    23.         byte[] csvDataBytes = csvData.getBytes();  
    24.         byte[] outputDataBytes = new byte[csvDataBytes.length + bom.length];   
    25.         System.arraycopy(bom, 0, outputDataBytes , 0, bom.length);  
    26.         System.arraycopy(csvDataBytes , 0, outputDataBytes , bom.length, csvDataBytes .length);  
    27.   
    28.         DataInputStream dataInputStream = new DataInputStream(new ByteArrayInputStream(outputDataBytes ));  
    29.           
    30.         // 添加到zip         
    31.         enc.add((++fileNum) + ".csv", dataInputStream, “123456”);  
    32.           
    33.         if (rowNum < totalRowNum) {  
    34.             csvData = "";  
    35.         }  
    36.     }  
    37. }  
    38.   
    39. out.flush();  
    40. catch (IOException e) {  
    41.     e.printStackTrace();  
    42. finally {       
    43.     if (enc != null) {enc.close();}   
    44.     if (out != null) {out.close();}  
    45. }  



     

     

    遗留问题(有时间研究一下代码看看有什么原因和解决方法):

    1. 好像没有不设密码的方法

    2. 压缩包里的文件名会出现乱码

     

    展开全文
  • 在写网页的时候经常会有需要限制某段文字不能超过多少行的需求, 尤其是在列表中。例如一般标题不应该超过一行、图文混排的区域文本一般不应超过图片的高度(如 5 行)等。关于只限制一行, 多出来部分显示成省略号的...

    在写网页的时候经常会有需要限制某段文字不能超过多少行的需求, 尤其是在列表中。例如一般标题不应该超过一行、图文混排的区域文本一般不应超过图片的高度(如 5 行)等。

    关于只限制一行, 多出来部分显示成省略号的方式可以参考 {% post_link css-text-overflow CSS使行内多出的文字显示成省略号 %}。 这里的主题是 -webkit-line-clamp, 可以限制文本为指定的行数, 超出部分显示为省略号。

    先看下效果:

    e673930a9cfbbe2a4e90da256de9e1db.png

    -webkit-line-clamp 目前仍然是一个不规范的属性, 它并没有出现在 CSS 规范草案中。作用是限制一个块级元素显示的文本行数。

    为了实现此效果还需要和其它的 CSS 属性组合使用, 如下:

    display: -webkit-box; 必须结合的属性, 用于将对象作为弹性盒模型显示。

    -webkit-box-orient 必须结合的属性, 设置或检索弹性盒模型的子元素的排列方式。

    text-overflow 可以隐藏多出的文本并用省略号代替。

    基本语法

    -webkit-line-clamp: ;

    其中, 是块元素显示的文本的行数。

    兼容性

    来自 CanIUse 的数据显示目前仅有 webkit 内核的浏览器支持此属性, 如 Chrome 、 Safari 、 Opera 、 安卓自带浏览器(安卓2.3以上)、 iOS 自带浏览器(5.1以上) 等。 IE 和火狐并不支持此属性。

    62cff58348c142eb6778d9c90a5a3424.png

    演示

    {% jsfiddle ymb3qbcv result,css,html light 100% 400 %}

    .line-clamp-2 {

    overflow: hidden;

    text-overflow: ellipsis;

    display: -webkit-box;

    -webkit-line-clamp: 2;

    -webkit-box-orient: vertical;

    }

    .line-clamp-3 {

    overflow: hidden;

    text-overflow: ellipsis;

    display: -webkit-box;

    -webkit-line-clamp: 3;

    -webkit-box-orient: vertical;

    }

    限制两行

    Promise是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise是一个对象,从它可以获取异步操作的消息。Promise提供统一的API,各种异步操作都可以用同样的方法进行处理。Promise对象有以下两个特点。

    (1)对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:Pending(进行中)、Resolved(已完成,又称Fulfilled)和Rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。这也是Promise这个名字的由来,它的英语意思就是“承诺”,表示其他手段无法改变。(2)一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise对象的状态改变,只有两种可能:从Pending变为Resolved和从Pending变为Rejected。只要这两种情况发生,状态就凝固了,不会再变了,会一直保持这个结果。就算改变已经发生了,你再对Promise对象添加回调函数,也会立即得到这个结果。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。

    限制三行

    Promise是异步编程的一种解决方案,比传统的解决方案——回调函数和事件——更合理和更强大。它由社区最早提出和实现,ES6将其写进了语言标准,统一了用法,原生提供了Promise对象。所谓Promise,简单说就是一个容器,里面保存着某个未来才会结束的事件(通常是一个异步操作)的结果。从语法上说,Promise是一个对象,从它可以获取异步操作的消息。Promise提供统一的API,各种异步操作都可以用同样的方法进行处理。Promise对象有以下两个特点。

    (1)对象的状态不受外界影响。Promise对象代表一个异步操作,有三种状态:Pending(进行中)、Resolved(已完成,又称Fulfilled)和Rejected(已失败)。只有异步操作的结果,可以决定当前是哪一种状态,任何其他操作都无法改变这个状态。这也是Promise这个名字的由来,它的英语意思就是“承诺”,表示其他手段无法改变。(2)一旦状态改变,就不会再变,任何时候都可以得到这个结果。Promise对象的状态改变,只有两种可能:从Pending变为Resolved和从Pending变为Rejected。只要这两种情况发生,状态就凝固了,不会再变了,会一直保持这个结果。就算改变已经发生了,你再对Promise对象添加回调函数,也会立即得到这个结果。这与事件(Event)完全不同,事件的特点是,如果你错过了它,再去监听,是得不到结果的。

    注* 文本内容摘自阮一峰老师的 《ECMAScript 6 入门

    展开全文
  • 图片横向等高瀑布流,每行占满,限制行数 的实现 图片的横向瀑布流,其实简单地按顺序排列就可以了 但要实现每行中各图片都等高(各行不一定等高,但每行里面等高),且每行都占满,就需要用到flex的特性了 控制...

    图片横向等高瀑布流,每行占满,限制行数 的实现

    图片的横向瀑布流,其实简单地按顺序排列就可以了

    但要实现每行中各图片都等高(各行不一定等高,但每行里面等高),且每行都占满,就需要用到flex的特性了

    控制每行图片高度都一致,可能会影响图片的比例,所以不能简单暴力地设置高度,需要按比例来动态计算

    另外,如要限制图片展示的行数,则只需判断好每行总高度与容器总高度的关系即可

    这里就来实现一下这个小功能

    点我预览

     

     

    因为都是假数据的关系,图片的宽高值是随机数,并非原图宽高值,仅作参考

    看完上面那张大大的图,先想一下可以怎么实现..

     

     

    要实现每行都能够占满,需要用到 flex-grow 这个属性

    flex-grow基于flex-basis基准值来计算,而flex-basis则基于项目的width、min|max-width相关的值来计算,或者手动定义

    使用flex-grow可以分配按比例分配主轴的剩余空间

    如果有10张图片需要放置,第一行仅可以放置四张图片,剩余100px的空间,那么各图片的flex-grow可以直接配置成图片的宽度width值,即可很方便精准地分配好这剩余的空间

    第二行可以放五张图片,剩余N px的空间... 按照这种计算方式来铺满每一行

     

    <h1 class="get-latest-update">
        <a href="javascript:;">获取最近更新</a>
    </h1>
    
    <div class="img-items"></div>
    
    <script type="text/template" id="img-item-tpl">
        <div class="img-item" style="flex-grow: {{width}}; width: {{width}}px;">
            <a href="#/img/{{id}}" style="padding-top: {{paddingTop}}%;">
                <img data-src="{{src}}" src="{{src}}" width="100%" height="100%">
            </a>
        </div>
    </script>

     

    上面页面模板中,flex-grow 与 width的值一致,用以按比例分配每行剩余空间

    另外可以看到这里有个 padding-top 的百分比值

    我们都知道  padding-top 的百分比值是基于父元素的宽度来计算的,根据盒模型,一般这种计算方式是为了获取固定宽高比

    当父元素有宽度,但高度为0时,整体高度则由padding-top值来撑开,则父元素就有了一个设定的宽高比,

    同时我们将子元素(这里是图片)position值设置为absolute,宽高占满父元素,则子元素图片也有了一定的宽高比,实现按比例的图片缩放

     

    来看看对应的样式设置

     

    body {
        background-color: #f2f2f2;
    }
    
    .get-latest-update {
        font-size: 20px;
        cursor: pointer;
        
        > a {
            color: #0183fd;
            text-decoration: none;
        }
    }
    
    .img-items {
        display: flex;
        flex-wrap: wrap;
        overflow: hidden;
    }
    
    .img-item {
        margin-right: 10px;
        margin-bottom: 10px;
        background-color: #fff;
        box-shadow: 0 0 10px #ddd;
        
        > a {
            position: relative;
            display: block;
            width: 100%;
        }
        
        img {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }
    }

     

     

    那么,这个width和padding-top的该怎么计算出来呢

    核心代码是

     

    // 图片预定义的高度
        var baseHeight = 200;
        
        for (var i = 1; i <= num; ++i) {
            var w = getRandom(width.min, width.max);
            var h = getRandom(height.min, height.max);
            
            imgs.push({
                id: i,
                src: imgSrcBase[Math.floor(i / 10)] + (i % 10 + 1) + '.jpg',
                // 设置图片的宽度,需根据预定义的高度值来做好比例处理
                // 为了让每行各图片按自身宽度自动flex-glow,同时利用这个比例处理保证每行图片的高度一致
                width: w * baseHeight / h,        
                height: h,
                // padding-top的百分比,用以基于父元素宽度设置该元素的高度
                // 为了保证图片宽高按比例
                paddingTop: h / w * 100
            });
        }

     

    paddingTop的值,按照以下这个映射关系来看就好

    容器高度 == 容器宽度 * paddingTop %

    最终会形成

    容器高度 == 图片高度

    容器宽度 == 图片宽度

    所以 

    图片高度 == 图片宽度 * paddingTop %

     

    width值的计算可能比较绕

    假设这里 width直接取 图片宽度w值,就会出现一行中图片高度不一致的情况

    因为最终的图片高度即为容器的高度,而容器的高度是由容器宽度决定的(注意这里的paddingTop值已经确定),而容器宽度就是由这里的width来决定的。图片宽度的不同,就直接导致了最终高度的不同

    所以,为了确保图片高度一致,假设有三张图片 50*50  100*100  50*150  放在了同一行中,flex布局会将三张图片所在容器的高度自适应为最高的那个150,如果flex-grow值起作用了,这个最高值还会再多一些

    我们可以考虑最简单的情况,正好放满一行。那么最终三张图片的高度都应该为150,按照各自的图片比例来调整,则最终第一张图片宽度的计算  50 / 50 === width / 150 , 则 width = 50 / 50 * 150

    可能有些行最高的图片还是不够高,为了也能够显示出比较大的图片,我们还可以定义好这个基准高度值,比如 baseHeight设置为 200

    所以,最终每一张图片的宽度width值为 w / h * baseHeight

     

     

     还要一个问题,如何实现只显示三行

    显示三行,每行的图片数量不固定,这是通过flex布局自动排列每一行的,都会经过 基本排列 -> 分配剩余空间 的步骤

    目前想到的方法是对每一行的容器所占位置进行累加,最后对比即可

    不过这种方式会有比较大的性能损耗,看还能不能有更优雅的做法吧

     

    // 设置显示的图片行数
    function setLineLimit(num) {
        // 内容区宽度
        var contentWidth = $('.img-items').outerWidth();
        // 定义的外边距
        var marginWidth = 10;
        // 每行宽度
        var curWidth = 0;
        // 行标识
        var lineIndex = 1;
        
        // 初始需将图片设置为可见,否则flex无法自适应排版
        $('.img-item').show()
            .each(function() {
                var $item = $(this);
                var itemWidth = $item.outerWidth();
                
                // 隐藏多余的行
                if (lineIndex > num) {
                    $item.hide();
                    return;
                }
                
                $item.show();
                
                // 某一行
                if (curWidth + itemWidth + marginWidth <= contentWidth + marginWidth) {
                    curWidth += itemWidth + marginWidth;
                }
                // 下一行
                else {
                    ++lineIndex;
                    curWidth = itemWidth;
                    
                    if (lineIndex > num) {
                        $item.hide();
                    }
                }
            });
    }

     

    主要注意的点是,为了兼顾视窗缩放的过程中,自动排列也能照常进行,在计算的时候需要将每个项先显示出来,再进入计算环节

    // 视窗缩放时处理可视的图片
    $(window).resize(throttle(setLineLimit.bind(this, 3), 200));

     

    完整JS代码

     View Code

     

    展开全文
  • 我需要限制一些文本,以便它永远不会超过2行这是我到目前为止:Here is some long text, it just keeps on going and going and going.. Hello, how are you? I'm fine thank you. And yadda yadda yaddah3 {width: ...
  • 当文字长度不确定,需要具体控制显示行数时: display: -webkit-box; overflow: hidden; text-overflow: -o-ellipsis-lastline; text-overflow: ellipsis; -webkit-line-clamp: 2; // 设置文本显示行
  • NSString *string =@"网页链接"; NSTextAttachment *textAttachment = [[NSTextAttachment alloc] init]; //给附件添加图片 textAttachment.image = [UIImage imageNamed:@"链接"]; //调整一下图片的位置,如果...
  • _ 第7步 通过控制一页的行数和每行的字数,可以快速更改文字间距和行距,从而得到需要的页面外观。比如,上述的文档,如果减小每页的行数和每行的字数,将得到非常稀松的效果。 _ 第8步 而如果增大行数和字数,则会...
  • WEB前端之网页设计④—-最新最全详解/网页中的表单 一、表单效果图: 代码片段: &amp;amp;amp;amp;lt;form action=&amp;amp;amp;quot;个人简介.html&amp;amp;amp;quot; method=&amp;amp;amp;...
  • 2、网站:我们可以将网站理解为是在上述的信息交换系统内用来临时存放和交流信息的一个平台(该平台就是由网页组成) 3、http协议:我们可以认为是用来规定不同的网站之间或者不同的客户端与服务器之间如何进行数据...
  • 条件注释只能在windows Internet Explorer(以下简称IE)下使用,因此我们可以通过条件注释来为...该例题很能说明网页对IE浏览器和非IE浏览器间的兼容性问题解决。 body{ background-color: #000; } 同时,有人会试图使用
  • 文本长度超出元素本身长度是实际应用长经常遇到的问题,如果不限制显示的文本内容,我们通常会截取文本的一部分内容,以保证页面整体布局的美观。这确实是一种方法,但对于做seo优化的人来说,截断文本会使蜘蛛爬取...
  • 需求:做出类似百度这样页码限制的数据分页查询的功能网页在数据库中通过数据的总行数以及你想要每次获取多少数据,就可以得到想要的页数总页数 = 总行数/pageSize + (行数%pageSize==0?0:1);所以获取数据的方法:...
  • 网页爬虫教程

    万次阅读 多人点赞 2018-09-08 00:18:54
    了解网页结构 学习爬虫, 首先要懂的是网页. 支撑起各种光鲜亮丽的网页的不是别的, 全都是一些代码. 这种代码我们称之为 HTML, HTML 是一种浏览器(Chrome, Safari, IE, Firefox等)看得懂的语言, 浏览器能将这种语言...
  • 我们的报表有服务器端分页,每页行数由用户设置,设置为0的时候表示一页显示,这样,当数据太多并且一页显示的时候会报错,比如有个固定资产的表,设置为每页30行的时候有580页,可以正常显示,但是设置为每页0行的...
  • 网页制作入门

    2020-02-21 15:39:31
    HTML:hyper textmarkup language 超文本标记...·制作网页,控制网页和内容的显示 ·插入图片、音乐、视频、动画等多媒体 ·通过链接来检索信息 ·使用表单获取用户的信息,实现交互 3.版本 W3C:world wide web c...
  • 如何在oracle和Mysql中限制返回结果集的大小在Oracle中如下:如何正确利用Rownum来限制查询所返回的行数? 软件环境: 1、Windows NT4.0+ORACLE 8.0.4 2、ORACLE安装路径为:C:/ORANT 含义解释: 1、rownum是...
  • 网页文本编辑器

    千次阅读 2013-05-07 09:42:39
    页面代码引用如下:js和css下载地址:http://download.csdn.net/detail/chabale/5339088
  • 如何在oracle和Mysql中限制返回结果集的大小在Oracle中如下:如何正确利用Rownum来限制查询所返回的行数? 软件环境: 1、Windows NT4.0+ORACLE 8.0.4 2、ORACLE安装路径为:C:/ORANT 含义解释: 1、rownum是...
  • 网页制作的中的一些工具代码

    千次阅读 2004-11-04 11:00:00
    22.TEXTAREA自适应文字行数的多少 23. 日期减去天数等于第二个日期 function cc(dd,dadd) { //可以加上错误处理 var a = new Date(dd) a = a.valueOf() a = a - dadd * 24 * 60 * 60 * 1000 a = new Date(a) ...
  • 网页制作技术

    千次阅读 2017-08-02 08:28:21
    网页制作技术 1、 XHTML+CSS 标记语言 一、 WEB标准的概念及组成 1)WEB标准是网页制作的标准,它不是一个标准,它是根据网页的不同组成部分生成的一系列标准。这些标准大部分由W3C起草发布,也有部分标准由ECMA...
  • PHP实现通过IP限制投票次数

    千次阅读 2016-11-10 21:43:55
    PHP实现通过IP限制投票次数 一、开发环境 1、Windows+Apache+MySQL+PHP的环境。 2、文本编辑器:Sublime。 二、主要技术 PHP+HTML+CSS 三、效果图与具体步骤 实现效果图,如图1所示。   图1 效果图 3.1...
  • 26个CSS小技巧,开发各种炫酷网页效果必备!

    千次阅读 多人点赞 2020-01-16 20:45:46
    //用来限制在一个块元素中显示的文本的行数 word-break: break-all; //让浏览器实现在任意位置的换行 *break-all为允许在单词内换行* } web前端开发学习Q-q-u-n: 731771211,分享学习的方法和需要注意的小细节,...
  • 网页_解除网页限制说明:可解除网页右键限制和防止复制限制! 网页_屏蔽信息框 说明:直接无视网页上弹出来的信息框和对话框 网页_取编码类型 说明:取网页的编码类型如:GBK 网页_取标题 说明:取网页的标题 ...
  • 限制html表格自动换行

    2012-01-10 09:32:51
    用表格做网页排版的时候,一般都能正常使用。偏偏有时会碰到一段连续的英文词或者一堆感叹号(!!!)把网页就撑开的现象:( 总结了一下,只要在CSS中定义了如下句子,可保网页不会再被撑开了。 table{table-layout: ...
  • HTML网页设计基础笔记 • 【第3章 表单】

    万次阅读 多人点赞 2020-03-21 10:03:12
    在遨游网络世界时,我们除了浏览网页信息,有时还需要将一些数据输入到网页中,经过网页提交至服务器。例如,我们登录邮箱时,需要输入用户名和密码。注册网站的用户时需要输入用户的信息,用户输入到网页中的信息均...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,392
精华内容 4,556
关键字:

网页行数限制