- html ul点击删除,用原生实现点击删除点击的li
weixin_39993454
htmlul点击删除
简单的实现方式#button{display:inline-block;}ul{list-style:none;}li{background-color:red;display:inline-block;width:20px;padding:10px;margin-left:3px;color:white;}window.onload=function(){varoBtn1=document.ge
- 微信小程序使用canvas画图保存图片到手机相册
岩岩很哇塞!
微信小程序微信小程序小程序canva可画
微信小程序要实现使用canvas绘制一个图,然后保存到手机相册**最终效果:**实现生成以下图片一、初始化canvas//wxml页面设置canvas标签//js页面初始化canvasdata:{ctx:'',details:'',windowW:375*3,windowH:265*3,ratio:3,showCanvas:false},onLoad(options){this.setData({
- vue前端根据接口返回的url 下载图片
爱心觉罗晓宇
java前端服务器
downloadPicture(imgSrc,name){constimage=newImage();//解决跨域Canvas污染问题image.setAttribute("crossOrigin","anonymous");image.src=imgSrc;image.onload=()=>{constcanvas=document.createElement("canvas");canvas.
- excel表格解析数据
摸鱼的张三
exceljava前端
varpersons=[];functionexcelChange(e){varfiles=e.filesvarfileReader=newFileReader();fileReader.onload=function(ev){console.log(ev);vardata=ev.target.resultvarworkbook=XLSX.read(data,{type:'binary'})var
- 将input type=file 获取到的图片展示到页面上
不会做饭的程序员
JSjs
我们创建一个函数,用于接收拿到的files[0],并将生成的base64地址返回出去getBase64(file){returnnewPromise(function(resolve,reject){letreader=newFileReader();letimgResult="";reader.readAsDataURL(file);reader.onload=function(){imgRes
- Js面试题
蛋蛋大少爷
JS基础1.documentload和documentready的区别答:1.load是当页面所有资源全部加载完成后(包括DOM文档树,css文件,js文件,图片资源等),执行一个函数问题:如果图片资源较多,加载时间较长,onload后等待执行的函数需要等待较长时间,所以一些效果可能受到影响2.$(document).ready()是当DOM文档树加载完成后执行一个函数(不包含图片,css等)所以
- 判断PDF与图片是否可以预览
马优晨
判断PDF是否可以预览判断图片是否可以预览PDF是否可以预览图片是否可以预览js判断PDF是否可以预览
一、判断图片是否可以预览在JavaScript中,可以使用Image对象来判断一个图片URL是否可以访问。如果图片可以被加载,那么load事件会被触发;如果图片无法访问,error事件会被触发。functioncheckImageAccessibility(url,callback){varimg=newImage();img.onload=function(){callback(true);//
- 微信小程序-及反向解包
花儿开富贵花
微信小程序小程序
1、分享朋友、朋友圈/***生命周期函数--监听页面加载*/onLoad(options){wx.showShareMenu({withShareTicket:true,menus:['shareAppMessage','shareTimeline'],})},/***用户点击右上角分享*/onShareAppMessage(){return{title:'title',imageUrl:'../
- jquery加载页面的方法(页面加载完成就执行)
JaosnY
JQueryjquery自动加载
转自http://www.jb51.net/article/27444.htmjquery加载页面的方法(页面加载完成就执行),建议大家看下windows.onload与$(document).ready之间的区别。1、$(function(){$("#a").click(function(){//addingyourcodehere});});2、$(document).ready(functi
- document.body为null的问题
雾江流
问题解决JSjavascriptdocumentnull
document.body为null的问题今天在head标签里写is代码时,给body添加标签时,发现报错,最后发现是document.bodyisnull的原因解决方法:原因很简单,是因为我们在body标签前就加载了或写的js代码,此时还没有body元素问题的解决办法把调用到document.body的JS代码移到body标签之中用onload属性让body先加载再执行JS代码window.on
- 微信小程序中如何监听元素进入目标元素
_处女座程序员的日常
微信小程序js交互微信小程序小程序
Page({onLoad:function(){//如果目标节点(用选择器.target-class指定)进入显示区域以下100px时,就会触发回调函数。wx.createIntersectionObserver().relativeToViewport({bottom:100}).observe('.target-class',(res)=>{res.intersectionRatio//相交区
- 小程序 onLaunch 与 onLoad 异步问题的解决方案
ZionHH
微信小程序小程序onLaunchonLoad
在小程序中,我们一般在onLaunch中发起登录请求,由于是请求是异步的,在onLoad之后才执行完登录请求,如果在onLoad中需要使用请求后的数据,会发现取不到值,以下是一些解决方式,可以按自己所需使用。使用回调函数//app.jsonLaunch(){wx.login({success:result=>{wx.request({url:'test.php'//示例data:{...},suc
- html5图片自动翻转,canvas实现图片镜像翻转的2种方式
weixin_39841136
html5图片自动翻转
1.通过canvas自带的画布方法进行翻转varimg=newImage();//这个就是img标签的dom对象img.src='./sy.png';img.onload=function(){//图片加载完成后,执行此方法ctx.drawImage(img,posx,posy,210,80);};play.addEventListener('click',function(){ctx.clear
- uniapp返回上一页并刷新数据方法
布偶123.
小程序Vueuni-app前端javascript
letpages=getCurrentPages();//当前页面letbeforePage=pages[pages.length-2];//上一页uni.navigateBack({success:function(){beforePage.onLoad();//执行上一页的onLoad方法}});1.getCurrentPages()获取当前页面的页面栈,是个数组2.pages[pages.l
- Vue瀑布流布局
薛文诚
vue.jscssjavascript
虽然会写js的瀑布流布局,但是在Vue框架下使用,还是要稍作修改,毕竟要减少DOM操作。原理依旧是绝对定位+left+top图片和文字还是有区别的,那就是渲染时间,所以我使用了onload,在图片渲染之后再进行瀑布流的布局Vue瀑布式布局body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,
- JS旧笔记
色即是猫
页面自动执行(加载)js的几种方法一、JS方法1.最简单的调用方式,直接写到html的body标签里面:2.在JS语句调用:functionmyfun(){alert("thiswindow.onload");}/*用window.onload调用myfun()*/window.onload=myfun;//不要括号3。window.onload=function(){func1();func2(
- 微信小程序 - picker-viewer实现省市选择器
卡卡舅舅
微信小程序微信小程序
简介本文会基于微信小程序pickerviewer组件实现省市选择器的功能。实现效果实现代码布局{{item.name}}{{item.name}}js代码借助observers,监听provincecode的变化,实现cities的更新。Page({data:{provinces:[],cities:[],value:[0,0],provinceCode:0},onLoad(){varprovin
- IDA 动态调试Android8 SO .init .init_array JNI_Onload
Sharkchilli
前言网上已经有很多在Android4中IDA如何调试.init.init_arrayJNI_Onload等文章,比如下面给出的参考,写的也非常详细,所以今天我们不讨论Android4。我们以Android8为例子。请读者先查看androidloadLibrary源码分析查找关键函数的偏移地址想要调试.init.init_array必须找到,call_function函数中的function(g_a
- 小程序如何获取后端的数据
陈丹阳(滁州学院)
小程序javascript前端
首先看你想要从后台获取什么数据,例如从接口文档中我们需要获取的是一组图片。那么我们需要在你要获取数据页面下的js文件中的date数据下面定义一个数组用来存放我们从后台获取的数据1.发送异步请求获取数据在js文件中的onLoad:function()函数中打出wx.request()函数会自动补全代码,下面是request函数中各个语句的用途我们可以先在request函数中先打印一下数据看看获取数据
- vue js原生上传图片前压缩方法
beyondjxx
javascriptvue.js前端
//压缩图片compressImage(file,maxWidth=750){returnnewPromise((resolve)=>{constreader=newFileReader();reader.onload=function(event){constimg=newImage();img.src=event.target.result;img.onload=function(){//co
- 微信小程序 - 选项卡切换 - 视频播放 - (图解+代码流程)
Envyᥫᩣ
微信小程序音视频小程序视频
目录一、选项卡切换效果图1.选项卡切换.wxml代码2.选项卡切换.wxss代码3.选项卡切换.js代码neirclik函数onLoad函数ctqis函数二、视频播放效果图1.视频播放.wxml代码视频组件1.视频播放.wxss代码3.视频播放.js代码**随机颜色生成函数getRandomColor()****页面初始数据****弹幕相关函数****视频切换函数qieclick(e)****生命
- UniApp Vue3版如何实现微信小程序样式穿透
antlers777_
uni-app微信小程序小程序
很多伙伴在写vue3的时候,都使用了组合式api。而在修改微信小程序的样式的时候,遇到不生效问题,H5却很听话。其实uniapp有个参数配置,需要开启小程序的样式穿透才行。那么在Vue3里该如何配置呢?import{computed,reactive,ref,toRaw}from"vue";importtype{Ref}from"vue";import{onLoad}from"@dcloudio/
- JavaScript语法基础之事件基础
苏苏渗透大师
web渗透javascript开发语言web安全前端安全
目录1.事件基础1.1.事件是什么?1.2.事件调用方式1.2.1.在script标签中调用1.2.2.在元素中调用事件1.3.鼠标事件1.3.1.鼠标单击1.4.表单事件1.4.1.onfocus&onblur1.5.页面事件1.5.1.onload1.事件基础1.1.事件是什么?举个例子,当我们点击一个按钮时,会弹出一个对话框。其中点击就是一个事件,弹出对话框就是我们在点击这个事件里面做的一些
- JavaScript语法基础之事件基础(鼠标、表单、页面事件等)
苏苏渗透大师
web渗透javascript开发语言安全网络安全web安全
目录1.事件基础1.1.事件是什么?1.2.事件调用方式1.2.1.在script标签中调用1.2.2.在元素中调用事件1.3.鼠标事件1.3.1.鼠标单击1.4.表单事件1.4.1.onfocus&onblur1.5.页面事件1.5.1.onload1.事件基础1.1.事件是什么?举个例子,当我们点击一个按钮时,会弹出一个对话框。其中点击就是一个事件,弹出对话框就是我们在点击这个事件里面做的一些
- 微信小程序监听用户经纬度变化
某公司摸鱼前端
微信小程序小程序
一些打卡App需要根据用户的位置来完成打卡那么就需要监听用户位置变化情况:示例://在某个生命周期函数中,如onLoad中onLoad:function(options){//开始监听位置变化wx.startLocationUpdate({success:function(){console.log('开始更新位置');},fail:function(){console.log('开始更新位置失败
- VUE 页面禁止缩放(华为平板浏览器可能失效)
唐屁屁儿
JSvuewebviewjavascript
h5页面移动端禁止缩放、web页面禁止浏览器缩放移动端优先,可禁止用户缩放和双击放大;在App.vue中的script内的方法里加入以下代码:window.onload=function(){document.addEventListener('touchstart',function(event){if(event.touches.length>1){event.preventDefault()
- WEB界面jquery1.7.2版本升级到jquery3.6版本需要注意的问题
程序十八大
javascriptjqueryjavascripthtml
$.size();需要更改为$.length;原因:1.8版本的时候$.size()被废弃页面加载的时候,$(function(){})与onload=""谁先执行的问题。
- uniapp手机号一键登录
藤原拓海_别天神
uni-app前端微信小程序
uniapp手机号一键登录,先写个button手机号一键登录先在onload钩子获取临时code码onLoad(){uni.login({provider:'weixin',success:(res)=>{console.log(res.code);this.code=res.code},})},我这里是封装了一下,因为有两个页面用到Vue.prototype.getBindPhone=funct
- uni-app微信小程序上拉加载,下拉刷新
Min_nna
小程序uni-app微信小程序前端
pages.json配置官网链接onPullDownRefresh、onReachBottom函数跟生命周期同级data(){return{orderList:[],total:null,//总共多少条数据page:1,pageSize:10,}},onLoad(){},mounted(){this.getInfo()},methods:{getInfo(){API.getListxxx().th
- jQuery ready 和 window.onload 的区别
BluesCurry
执行时间:window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行。$(element).ready()是DOM结构绘制完毕后就执行,不必等到页面所有元素加载完毕。编写方法个数不同:window.onload不能同时编写多个,如果有多个window.onload方法只会执行一个。$(element).ready()可以同时编写多个,并且都可以得到执行。注:$(document)
- apache 安装linux windows
墙头上一根草
apacheinuxwindows
linux安装Apache 有两种方式一种是手动安装通过二进制的文件进行安装,另外一种就是通过yum 安装,此中安装方式,需要物理机联网。以下分别介绍两种的安装方式
通过二进制文件安装Apache需要的软件有apr,apr-util,pcre
1,安装 apr 下载地址:htt
- fill_parent、wrap_content和match_parent的区别
Cb123456
match_parentfill_parent
fill_parent、wrap_content和match_parent的区别:
1)fill_parent
设置一个构件的布局为fill_parent将强制性地使构件扩展,以填充布局单元内尽可能多的空间。这跟Windows控件的dockstyle属性大体一致。设置一个顶部布局或控件为fill_parent将强制性让它布满整个屏幕。
2) wrap_conte
- 网页自适应设计
天子之骄
htmlcss响应式设计页面自适应
网页自适应设计
网页对浏览器窗口的自适应支持变得越来越重要了。自适应响应设计更是异常火爆。再加上移动端的崛起,更是如日中天。以前为了适应不同屏幕分布率和浏览器窗口的扩大和缩小,需要设计几套css样式,用js脚本判断窗口大小,选择加载。结构臃肿,加载负担较大。现笔者经过一定时间的学习,有所心得,故分享于此,加强交流,共同进步。同时希望对大家有所
- [sql server] 分组取最大最小常用sql
一炮送你回车库
SQL Server
--分组取最大最小常用sql--测试环境if OBJECT_ID('tb') is not null drop table tb;gocreate table tb( col1 int, col2 int, Fcount int)insert into tbselect 11,20,1 union allselect 11,22,1 union allselect 1
- ImageIO写图片输出到硬盘
3213213333332132
javaimage
package awt;
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imagei
- 自己的String动态数组
宝剑锋梅花香
java动态数组数组
数组还是好说,学过一两门编程语言的就知道,需要注意的是数组声明时需要把大小给它定下来,比如声明一个字符串类型的数组:String str[]=new String[10]; 但是问题就来了,每次都是大小确定的数组,我需要数组大小不固定随时变化怎么办呢? 动态数组就这样应运而生,龙哥给我们讲的是自己用代码写动态数组,并非用的ArrayList 看看字符
- pinyin4j工具类
darkranger
.net
pinyin4j工具类Java工具类 2010-04-24 00:47:00 阅读69 评论0 字号:大中小
引入pinyin4j-2.5.0.jar包:
pinyin4j是一个功能强悍的汉语拼音工具包,主要是从汉语获取各种格式和需求的拼音,功能强悍,下面看看如何使用pinyin4j。
本人以前用AscII编码提取工具,效果不理想,现在用pinyin4j简单实现了一个。功能还不是很完美,
- StarUML学习笔记----基本概念
aijuans
UML建模
介绍StarUML的基本概念,这些都是有效运用StarUML?所需要的。包括对模型、视图、图、项目、单元、方法、框架、模型块及其差异以及UML轮廓。
模型、视与图(Model, View and Diagram)
&
- Activiti最终总结
avords
Activiti id 工作流
1、流程定义ID:ProcessDefinitionId,当定义一个流程就会产生。
2、流程实例ID:ProcessInstanceId,当开始一个具体的流程时就会产生,也就是不同的流程实例ID可能有相同的流程定义ID。
3、TaskId,每一个userTask都会有一个Id这个是存在于流程实例上的。
4、TaskDefinitionKey和(ActivityImpl activityId
- 从省市区多重级联想到的,react和jquery的差别
bee1314
jqueryUIreact
在我们的前端项目里经常会用到级联的select,比如省市区这样。通常这种级联大多是动态的。比如先加载了省,点击省加载市,点击市加载区。然后数据通常ajax返回。如果没有数据则说明到了叶子节点。 针对这种场景,如果我们使用jquery来实现,要考虑很多的问题,数据部分,以及大量的dom操作。比如这个页面上显示了某个区,这时候我切换省,要把市重新初始化数据,然后区域的部分要从页面
- Eclipse快捷键大全
bijian1013
javaeclipse快捷键
Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行 Ctrl+Alt+↓ 复制当前行到下一行(复制增加)Ctrl+Alt+↑ 复制当前行到上一行(复制增加)Alt+↓ 当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)Alt+↑ 当前行和上面一行交互位置(同上)Alt+← 前一个编辑的页面Alt+→ 下一个编辑的页面(当然是针对上面那条来说了)Alt+En
- js 笔记 函数
征客丶
JavaScript
一、函数的使用
1.1、定义函数变量
var vName = funcation(params){
}
1.2、函数的调用
函数变量的调用: vName(params);
函数定义时自发调用:(function(params){})(params);
1.3、函数中变量赋值
var a = 'a';
var ff
- 【Scala四】分析Spark源代码总结的Scala语法二
bit1129
scala
1. Some操作
在下面的代码中,使用了Some操作:if (self.partitioner == Some(partitioner)),那么Some(partitioner)表示什么含义?首先partitioner是方法combineByKey传入的变量,
Some的文档说明:
/** Class `Some[A]` represents existin
- java 匿名内部类
BlueSkator
java匿名内部类
组合优先于继承
Java的匿名类,就是提供了一个快捷方便的手段,令继承关系可以方便地变成组合关系
继承只有一个时候才能用,当你要求子类的实例可以替代父类实例的位置时才可以用继承。
在Java中内部类主要分为成员内部类、局部内部类、匿名内部类、静态内部类。
内部类不是很好理解,但说白了其实也就是一个类中还包含着另外一个类如同一个人是由大脑、肢体、器官等身体结果组成,而内部类相
- 盗版win装在MAC有害发热,苹果的东西不值得买,win应该不用
ljy325
游戏applewindowsXPOS
Mac mini 型号: MC270CH-A RMB:5,688
Apple 对windows的产品支持不好,有以下问题:
1.装完了xp,发现机身很热虽然没有运行任何程序!貌似显卡跑游戏发热一样,按照那样的发热量,那部机子损耗很大,使用寿命受到严重的影响!
2.反观安装了Mac os的展示机,发热量很小,运行了1天温度也没有那么高
&nbs
- 读《研磨设计模式》-代码笔记-生成器模式-Builder
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
/**
* 生成器模式的意图在于将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示(GoF)
* 个人理解:
* 构建一个复杂的对象,对于创建者(Builder)来说,一是要有数据来源(rawData),二是要返回构
- JIRA与SVN插件安装
chenyu19891124
SVNjira
JIRA安装好后提交代码并要显示在JIRA上,这得需要用SVN的插件才能看见开发人员提交的代码。
1.下载svn与jira插件安装包,解压后在安装包(atlassian-jira-subversion-plugin-0.10.1)
2.解压出来的包里下的lib文件夹下的jar拷贝到(C:\Program Files\Atlassian\JIRA 4.3.4\atlassian-jira\WEB
- 常用数学思想方法
comsci
工作
对于搞工程和技术的朋友来讲,在工作中常常遇到一些实际问题,而采用常规的思维方式无法很好的解决这些问题,那么这个时候我们就需要用数学语言和数学工具,而使用数学工具的前提却是用数学思想的方法来描述问题。。下面转帖几种常用的数学思想方法,仅供学习和参考
函数思想
把某一数学问题用函数表示出来,并且利用函数探究这个问题的一般规律。这是最基本、最常用的数学方法
- pl/sql集合类型
daizj
oracle集合typepl/sql
--集合类型
/*
单行单列的数据,使用标量变量
单行多列数据,使用记录
单列多行数据,使用集合(。。。)
*集合:类似于数组也就是。pl/sql集合类型包括索引表(pl/sql table)、嵌套表(Nested Table)、变长数组(VARRAY)等
*/
/*
--集合方法
&n
- [Ofbiz]ofbiz初用
dinguangx
电商ofbiz
从github下载最新的ofbiz(截止2015-7-13),从源码进行ofbiz的试用
1. 加载测试库
ofbiz内置derby,通过下面的命令初始化测试库
./ant load-demo (与load-seed有一些区别)
2. 启动内置tomcat
./ant start
或
./startofbiz.sh
或
java -jar ofbiz.jar
&
- 结构体中最后一个元素是长度为0的数组
dcj3sjt126com
cgcc
在Linux源代码中,有很多的结构体最后都定义了一个元素个数为0个的数组,如/usr/include/linux/if_pppox.h中有这样一个结构体: struct pppoe_tag { __u16 tag_type; __u16 tag_len; &n
- Linux cp 实现强行覆盖
dcj3sjt126com
linux
发现在Fedora 10 /ubutun 里面用cp -fr src dest,即使加了-f也是不能强行覆盖的,这时怎么回事的呢?一两个文件还好说,就输几个yes吧,但是要是n多文件怎么办,那还不输死人呢?下面提供三种解决办法。 方法一
我们输入alias命令,看看系统给cp起了一个什么别名。
[root@localhost ~]# aliasalias cp=’cp -i’a
- Memcached(一)、HelloWorld
frank1234
memcached
一、简介
高性能的架构离不开缓存,分布式缓存中的佼佼者当属memcached,它通过客户端将不同的key hash到不同的memcached服务器中,而获取的时候也到相同的服务器中获取,由于不需要做集群同步,也就省去了集群间同步的开销和延迟,所以它相对于ehcache等缓存来说能更好的支持分布式应用,具有更强的横向伸缩能力。
二、客户端
选择一个memcached客户端,我这里用的是memc
- Search in Rotated Sorted Array II
hcx2013
search
Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed?
Would this affect the run-time complexity? How and why?
Write a function to determine if a given ta
- Spring4新特性——更好的Java泛型操作API
jinnianshilongnian
spring4generic type
Spring4新特性——泛型限定式依赖注入
Spring4新特性——核心容器的其他改进
Spring4新特性——Web开发的增强
Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC
Spring4新特性——Groovy Bean定义DSL
Spring4新特性——更好的Java泛型操作API
Spring4新
- CentOS安装JDK
liuxingguome
centos
1、行卸载原来的:
[root@localhost opt]# rpm -qa | grep java
tzdata-java-2014g-1.el6.noarch
java-1.7.0-openjdk-1.7.0.65-2.5.1.2.el6_5.x86_64
java-1.6.0-openjdk-1.6.0.0-11.1.13.4.el6.x86_64
[root@localhost
- 二分搜索专题2-在有序二维数组中搜索一个元素
OpenMind
二维数组算法二分搜索
1,设二维数组p的每行每列都按照下标递增的顺序递增。
用数学语言描述如下:p满足
(1),对任意的x1,x2,y,如果x1<x2,则p(x1,y)<p(x2,y);
(2),对任意的x,y1,y2, 如果y1<y2,则p(x,y1)<p(x,y2);
2,问题:
给定满足1的数组p和一个整数k,求是否存在x0,y0使得p(x0,y0)=k?
3,算法分析:
(
- java 随机数 Math与Random
SaraWon
javaMathRandom
今天需要在程序中产生随机数,知道有两种方法可以使用,但是使用Math和Random的区别还不是特别清楚,看到一篇文章是关于的,觉得写的还挺不错的,原文地址是
http://www.oschina.net/question/157182_45274?sort=default&p=1#answers
产生1到10之间的随机数的两种实现方式:
//Math
Math.roun
- oracle创建表空间
tugn
oracle
create temporary tablespace TXSJ_TEMP
tempfile 'E:\Oracle\oradata\TXSJ_TEMP.dbf'
size 32m
autoextend on
next 32m maxsize 2048m
extent m
- 使用Java8实现自己的个性化搜索引擎
yangshangchuan
javasuperword搜索引擎java8全文检索
需要对249本软件著作实现句子级别全文检索,这些著作均为PDF文件,不使用现有的框架如lucene,自己实现的方法如下:
1、从PDF文件中提取文本,这里的重点是如何最大可能地还原文本。提取之后的文本,一个句子一行保存为文本文件。
2、将所有文本文件合并为一个单一的文本文件,这样,每一个句子就有一个唯一行号。
3、对每一行文本进行分词,建立倒排表,倒排表的格式为:词=包含该词的总行数N=行号