
【基本介绍】
【软件特性】
1、运行速度:打开CSV文件速度比Excel、WPS快四倍,上百兆的CSV文件打开只需十几秒,上千万行的排序都能够几秒内完成2、内存占用:文件内容全部放在内存中,纯粹的C语言指针将内存使用优化到极致,全局部情况内存也就比CSV文件大2-3倍,有些情况内存甚至比CSV文件还小
3、CSV大小:看机器内存,一般8G内存机器能够一次编辑2G的CSV文件
4、最大行数:Excel2007以上版本最多为1048576行,Snapde能够编辑的行数是Excel十几二十倍以上,一般8G内存机器都能够打开1000万到2000万行CSV进行编辑
5、分页编辑:应付大于2G的CSV大数据,还能够进行分页编辑一次打开1000万行编辑保留,然后打开下1000万行进行编辑保留。。。
6、数据运算:软件集合了Exprtk、C、python语言执行器;经测验Exprtk执行效率比C#、java慢一点(20%),C语言比C#、java快很多,python比Exprtk、C慢10倍左右但可用资源多;不消说Excel的VBA,这三种语言都能够直接虐杀它
7、运行情况:windows
【软件功能】
一、文件功能1、新建电子表格,默认是299行、25列,如果想要增加行数能够在底下空缺处双击鼠标左键一次添加300行,想要增加列数能够在右边空缺处双击鼠标左键一次添加26列;如果想要精确操纵行列数能够在编辑下的编辑行列数菜单设置具体行列数
2、打开CSV、TXT、smd文件,CSV是逗号分隔的文本文件,TXT是tab键分割的文本文件,smd是Snapde自身定义的文件格式(打开保留速度比CSV、TXT快两倍),软件能够主动识别GBK、UTF8、UNICODE编码,保留只能保留成GBK编码
3、分页打开,如果CSV文件太大能够进行非凡也打开,指定是否保留第一行标题、开头行号、一次打开的行数
4、文件保留,新建、打开、分页打开的文件进行保留
5、另存,当前文件能够另存为新文件或者新格式文件
6、追加,将很多子文件追加打开到本文件中,如果第一行标题相同会主动过滤掉新文件标题行
7、分割,将本文件分割保留成多个子文件,包括:是否保留第一行标题,按行数分割或者按文件数分割
二、编辑功能
1、机动的选择集:全选、行选、列选、框选
2、单元格非常优秀的多行编辑功能,单元格撑腰编辑几兆到几十兆的多行文本
3、编辑撑腰包含数字的序列变化:框选需要变化的单元格进行编辑,按住ctrl键然后完成编辑,如果编辑内容中存在数字这些单元格会得到序列变化内容,否则内容相同
4、强大的撤销、重做功能
5、撑腰对选择集的剪切、复制、粘贴
6、消除内容
7、删除:删除选定行、列
8、全选
9、插入行/列:在选定行或列前面能够插入一行或一列
10、回复宽高:将选定的行或列回复成默认的宽高
11、隐藏:将选定的行或列进行隐藏
12、取消隐藏:将选定行或列中间的隐藏行列进行显示
13、放大、缩小:对电子表格进行放大或缩小
14、转跳:转跳到指定的行列
15、设置过滤:对选择集设置过滤(如果只选择了一个单元格那就是对全部进行过滤),只显示过滤条件内的数据
16、删除反复:对选择集中的反复数据进行删除(包括扩选整行删除)
17、升序排序:对选择集进行升序排序(包括扩选整行排序)
18、降序排序:对选择集进行降序排序(包括扩选整行排序)
19、隔行颜色:设置单双行背景显示差别颜色
20、添加300行:往后面添加300行
21、添加26列:往后面添加26列
22、设置行列数:精确设置电子表格的行列数
三、搜索
1、查找:往前、往后查找、计数
2、替换:替换下一个、全部替换
四、脚本
1、设置Exprtk脚本:将单元格设置为Exprtk脚本,能够在单元格进行脚本编辑和运行
2、设置TCC脚本:将单元格设置为C语言脚本,能够在单元格进行脚本编辑和运行
3、设置Python脚本:将单元格设置为Python脚本,能够在单元格进行脚本编辑和运行
4、设置一般文本
5、运行选择脚本:将选择集中脚本单元格按从左到右、从上往下运行
6、运行全部脚本:将电子表格中所欲脚本单元格按从左到右、从上往下运行
五、脚本接口
1、Exprtk脚本接口
A、Exprtk语法:https://github.com/ArashPartow/exprtk
B、Snapde封装的Expr接口:
单元格的数字变量,如:A1,代替第一行第一列的单元格数字变量,能够用它猎取此单元格的值,也能够直接赋值数字
单元格的字符串变量,如:A1_,代替第一行第一列的单元格字符串变量,能够用它猎取此单元格的字符串,也能够直接赋值字符串
a、to_lower(str),将字符串转化成小写
b、to_upper(str),将字符串转化成大写
c、to_string(num),将数字转化成字符串
d、to_number(str),将字符串转化成数字
e、get(row,col),猎取row、col指定单元格的数字,如果是非数字字符串则返回0
f、set(row,col,num),将row、col、指定单元格设置为数字num
g、get_(row,col),猎取row、col指定单元格的字符串,如果是是数字则将数字转化成字符串
h、set_(row,col,str),将row、col、指定单元格设置为字符串str
i、set_progress(n),设置进度条进度n,n的范围从0到100
j、sleep(n),挂起一段时间n毫秒,n为整数
k、get_tick_count(),猎取从操作系统启动到现在所通过的毫秒数
l、save(),保留当前文件,胜利返回1,失败返回0
m、save_as(file),将当前电子表格另存为file指定的文件(file必须是带名称的全路径),胜利返回1,失败返回0
n、get_row_count(),猎取当前电子表格的行数
o、get_col_count(),猎取当前电子表格的列数
p、resize(nRow,nCol),重新设置当前电子表格的行列数,nRow、nCol都需要大于1
2、C语言脚本
a、get(introw,intcol,double*num),猎取row、col指定单元格的数字,将结果放在num里,如果是非数字字符串则返回0
b、set(introw,intcol,doublenum),将row、col、指定单元格设置为数字num
c、get_(introw,intcol,char**data),猎取row、col指定单元格的字符串,将结果放到data里,如果是是数字则将数字转化成字符串,注意:*data指针不需要手动释放,会在下次挪用此函数或本脚本运行完主动释放
d、set_(introw,intcol,char*str),将row、col、指定单元格设置为字符串str
e、set_progress(intn),设置进度条进度n,n的范围从0到100
f、get_tick_count(),猎取从操作系统启动到现在所通过的毫秒数
g、save(),保留当前文件,胜利返回1,失败返回0
h、save_as(char*file),将当前电子表格另存为file指定的文件(file必须是带名称的全路径),胜利返回1,失败返回0
i、get_row_count(),猎取当前电子表格的行数
j、get_col_count(),猎取当前电子表格的列数
k、resize(intnRow,intnCol),重新设置当前电子表格的行列数,nRow、nCol都需要大于1
3、Python脚本
在使用Snapde功能前需要引入Snapde模块:importSnapde
a、Snapde.get(introw,intcol),猎取row、col指定单元格的数字,如果是非数字字符串则返回0
b、Snapde.set(introw,intcol,doublenum),将row、col、指定单元格设置为数字num
c、Snapde.get_(introw,intcol),猎取row、col指定单元格的字符串,如果是是数字则将数字转化成字符串
d、Snapde.set_(introw,intcol,char*str),将row、col、指定单元格设置为字符串str
e、Snapde.set_progress(intn),设置进度条进度n,n的范围从0到100
f、Snapde.get_tick_count(),猎取从操作系统启动到现在所通过的毫秒数
g、Snapde.save(),保留当前文件,胜利返回1,失败返回0
h、Snapde.save_as(char*file),将当前电子表格另存为file指定的文件(file必须是带名称的全路径),胜利返回1,失败返回0
i、Snapde.get_row_count(),猎取当前电子表格的行数
j、Snapde.get_col_count(),猎取当前电子表格的列数
k、Snapde.resize(intnRow,intnCol),重新设置当前电子表格的行列数,nRow、nCol都需要大于1
六、脚本性能
打开一个910M的CSV文件:london_crime_by_lsoa.csv,总共有13490605行、7列,单元格:94434235个,使用三种脚本进行简单求和运算:
1、Exprtk脚本花费:4.343秒
2、C语言花费:1.203秒
3、Python语言花费:52.468秒
精品软件
- 高速下载器通道
- 电信高速下载电信高速下载联通高速下载联通高速下载
- 一般下载地点
- 浙江电信下载湖南电信下载广东电信下载江苏电信下载河南联通下载山东联通下载