[发明专利]一种加载远程csv文件的方法和装置有效
| 申请号: | 201911213083.1 | 申请日: | 2019-12-02 |
| 公开(公告)号: | CN110990079B | 公开(公告)日: | 2020-07-24 |
| 发明(设计)人: | 曹东刚;李炎;安博 | 申请(专利权)人: | 北京大学 |
| 主分类号: | G06F9/445 | 分类号: | G06F9/445 |
| 代理公司: | 北京高沃律师事务所 11569 | 代理人: | 杨媛媛 |
| 地址: | 100871*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 加载 远程 csv 文件 方法 装置 | ||
1.一种加载远程csv文件的方法,其特征在于,包括:
获取浏览器前端发送的文件打开请求;
读取所述文件打开请求所指定文件的前M行数据以及所述文件打开请求所指定文件中数据的总行数,将前M行数据和总行数反馈给所述浏览器前端;
将所述文件打开请求所指定文件的文件指针位置更新为第M行;
获取浏览器前端发送的加载请求;
根据所述加载请求读取目标位置的N行数据并反馈给所述浏览器前端;
当所述加载请求为连续浏览加载请求时,所述根据所述加载请求读取目标位置的N行数据并反馈给所述浏览器前端具体包括:
读取当前读取行数之后的N行数据并反馈给所述浏览器前端;
将所述文件指针位置所指行加N;
所述连续浏览加载请求为在当前浏览行的基础上继续向后浏览的请求;
当所述加载请求为跳转请求时,所述根据所述加载请求读取目标位置的N行数据并反馈给所述浏览器前端具体包括:
根据所述跳转请求确定跳转位置;
从所述跳转位置开始读取所述跳转位置之后的N行数据并反馈给所述浏览器前端。
2.根据权利要求1所述的加载远程csv文件的方法,其特征在于,所述读取当前读取行数之后的N行数据并反馈给所述浏览器前端,具体包括:
获取所述文件指针位置所指行;
读取所述所指行之后的N行数据,得到连续浏览加载数据;
将所述连续浏览加载数据反馈给所述浏览器前端。
3.根据权利要求1所述的加载远程csv文件的方法,其特征在于,所述从所述跳转位置开始读取所述跳转位置之后的N行数据并反馈给所述浏览器前端,具体包括:
将所述文件指针位置所指行更新为所述跳转位置所处行,得到指针跳转行;
读取所述指针跳转行之后的N行数据,得到跳转加载数据;
将所述跳转加载数据反馈给所述浏览器前端;
将所述文件指针位置所指行更新为所述指针跳转行之后的第N行。
4.一种加载远程csv文件的装置,其特征在于,包括:前端、数据呈现组件、后端、文件读取模块、文件指针表和文件读取线程池;所述前端和所述数据呈现组件位于浏览器中;所述后端、所述文件读取模块、所述文件指针表和所述文件读取线程池位于存储有待加载的表格文件的远程服务器中;
所述前端与所述数据呈现组件双向连接,所述前端还与所述后端双向连接;所述后端与所述文件读取模块双向连接,所述文件读取模块与所述文件指针表以及所述文件读取线程池双向连接;所述文件读取线程池与所述文件指针表双向连接;
所述前端用于获取来自用户的浏览请求以及来自所述后端的读取数据,并将所述浏览请求发送至所述后端以及将所述读取数据发送至所述数据呈现组件;
所述数据呈现组件用于在浏览器中呈现所述读取数据;所述浏览请求包括文件打开请求、连续浏览加载请求和跳转请求;所述连续浏览加载请求为在当前浏览行的基础上继续向后浏览的请求;
所述后端用于将来自所述前端的浏览请求发送至所述文件读取模块,并将来自所述文件读取模块的读取数据发送至所述前端;
所述文件读取模块用于在获取到所述文件打开请求后启动所述文件读取线程池从而读取所述文件打开请求所指定文件的前M行数据以及所述文件打开请求所指定文件中数据的总行数,并将前M行数据和总行数发送给所述后端;在获取到所述连续浏览加载请求时,读取所述文件指针表中的文件指针位置,启动所述文件读取线程池读取所述文件指针位置之后的N行数据,将读取的N行数据反馈给所述浏览器前端,将文件指针位置所指行加N;在获取到所述跳转请求时,将文件指针位置更新为跳转位置,启动所述文件读取线程池读取所述文件指针位置之后的N行数据,将读取的N行数据反馈给所述浏览器前端,将文件指针位置所指行加N;
所述文件指针表用于存储每个表格文件的文件指针位置;
所述文件读取线程池用于读取所述表格文件。
5.根据权利要求4所述的加载远程csv文件的装置,其特征在于,所述数据呈现组件为Handsontable插件;所述Handsontable插件用于将读取数据渲染为电子表格呈现给用户。
6.根据权利要求4所述的加载远程csv文件的装置,其特征在于,所述前端和所述后端均为JupyterNotebook插件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911213083.1/1.html,转载请声明来源钻瓜专利网。





