System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() CSV文件的数据加载方法、装置、设备以及存储介质制造方法及图纸_技高网

CSV文件的数据加载方法、装置、设备以及存储介质制造方法及图纸

技术编号:41526433 阅读:13 留言:0更新日期:2024-06-03 23:00
本公开的实施例提供了一种CSV文件的数据加载方法、装置、设备以及存储介质,应用于数据存储技术领域。所述方法包括获取待加载CSV文件;提取待加载CSV文件中逗号和换行符的位置信息、值状态信息以及边界状态信息;根据逗号和换行符的位置信息、值状态信息以及边界状态信息,生成待加载CSV文件对应的缓冲文件;其中,缓冲文件用于描述待加载CSV文件中逗号和换行符的位置、每行的起始位置以及每个值的预设偏移量;基于缓冲文件,加载待加载CSV文件。以此方式,可以加快对数据的分析,无需再基于人工操作对逗号和换行符进行进一步分析定位,从而有效加快对CSV文件的处理速度,进而提高数据处理效率。

【技术实现步骤摘要】

本公开涉及数据处理,尤其涉及数据存储,具体涉及一种csv文件的数据加载方法、装置、设备以及存储介质。


技术介绍

1、逗号分隔值(comma-separated values,csv)是一种常用的数据格式,在绝大多数领域有着较高的使用频率,例如随着大数据时代的到来,csv被广泛用于数据的存储和交互中。在使用csv格式存储数据时,一般使用逗号对值进行分隔,或者使用换行符对行进行分隔,但是值中也可能存在逗号和换行符。基于此,在对csv文件进行数据加载时,每次加载都需要先定位逗号和换行符,再基于人工操作对逗号和换行符进行进一步分析定位,导致数据处理效率较低。


技术实现思路

1、本公开提供了一种csv文件的数据加载方法、装置、设备以及存储介质。

2、根据本公开的第一方面,提供了一种csv文件的数据加载方法。该方法包括:

3、获取待加载csv文件;

4、提取所述待加载csv文件中逗号和换行符的位置信息、值状态信息以及边界状态信息;其中,所述值状态信息为用于表征当前字符是在所述待加载csv文件中引号内的值,或者是所述待加载csv文件中值间的预设符号的信息;所述边界状态信息为用于表征所述待加载csv文件中边界切换的位置信息;

5、根据所述逗号和换行符的位置信息、所述值状态信息以及所述边界状态信息,生成所述待加载csv文件对应的缓冲文件;其中,所述缓冲文件用于描述所述待加载csv文件中逗号和换行符的位置、每行的起始位置以及每个值的预设偏移量;

<p>6、基于所述缓冲文件,加载所述待加载csv文件。

7、如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述根据所述逗号和换行符的位置信息、所述值状态信息以及所述边界状态信息,生成所述待加载csv文件对应的缓冲文件包括:

8、根据所述逗号和换行符的位置信息、所述值状态信息以及所述边界状态信息,检测所述待加载csv文件中逗号和换行符是否表示值;

9、若检测到表示值的逗号和/或换行符,则从所述逗号和换行符的位置信息中删除表示值的逗号和/或换行符对应的位置信息;

10、根据执行删除操作后的逗号和换行符的位置信息,生成所述待加载csv文件对应的缓冲文件。

11、如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述预设偏移量为1字节、2字节、4字节或者8字节。

12、如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述基于所述缓冲文件,读取所述待加载csv文件包括:

13、根据所述缓冲文件中描述所述待加载csv文件中逗号和换行符的位置,对所述待加载csv文件进行分块处理和批量读取,完成对所述待加载csv文件的全文加载。

14、如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述基于所述缓冲文件,读取所述待加载csv文件包括:

15、根据所述缓冲文件中描述每行的起始位置以及每个值的预设偏移量,逐行对所述待加载csv文件中预设目标值进行读取,完成对所述待加载csv文件的指定列加载。

16、如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述基于所述缓冲文件,读取所述待加载csv文件包括:

17、根据所述缓冲文件中描述每行的起始位置,对所述待加载csv文件中预设目标行进行读取,完成对所述待加载csv文件的指定行加载。

18、如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述获取待加载csv文件包括:

19、采用流式文件读取目标csv文件,得到待加载csv文件。

20、根据本公开的第二方面,提供了一种csv文件的数据加载装置。该装置包括:

21、获取模块,用于获取待加载csv文件;

22、提取模块,用于提取所述待加载csv文件中逗号和换行符的位置信息、值状态信息以及边界状态信息;其中,所述值状态信息为用于表征当前字符是在所述待加载csv文件中引号内的值,或者是所述待加载csv文件中值间的预设符号的信息;所述边界状态信息为用于表征所述待加载csv文件中边界切换的位置信息;

23、生成模块,用于根据所述逗号和换行符的位置信息、所述值状态信息以及所述边界状态信息,生成所述待加载csv文件对应的缓冲文件;其中,所述缓冲文件用于描述所述待加载csv文件中逗号和换行符的位置、每行的起始位置以及每个值的预设偏移量;

24、加载模块,用于基于所述缓冲文件,加载所述待加载csv文件。

25、根据本公开的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。

26、根据本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如以上所述的方法。

27、本申请实施例提供的一种csv文件的数据加载方法、装置、设备以及存储介质,能够通过获取待加载csv文件;再提取待加载csv文件中逗号和换行符的位置信息、值状态信息以及边界状态信息;再根据逗号和换行符的位置信息、值状态信息以及边界状态信息,生成用于描述待加载csv文件中逗号和换行符的位置、每行的起始位置以及每个值的预设偏移量的缓冲文件,直接利用缓冲文件对待加载csv文件进行加载,加快对数据的分析,无需再基于人工操作对逗号和换行符进行进一步分析定位,从而有效加快对csv文件的处理速度,进而提高数据处理效率。

28、应当理解,
技术实现思路
部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。

本文档来自技高网
...

【技术保护点】

1.一种CSV文件的数据加载方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述逗号和换行符的位置信息、所述值状态信息以及所述边界状态信息,生成所述待加载CSV文件对应的缓冲文件包括:

3.根据权利要求1所述的方法,其特征在于,所述预设偏移量为1字节、2字节、4字节或者8字节。

4.根据权利要求1所述的方法,其特征在于,所述基于所述缓冲文件,读取所述待加载CSV文件包括:

5.根据权利要求1所述的方法,其特征在于,所述基于所述缓冲文件,读取所述待加载CSV文件包括:

6.根据权利要求1所述的方法,其特征在于,所述基于所述缓冲文件,读取所述待加载CSV文件包括:

7.根据权利要求1至6中任一权利要求所述的方法,其特征在于,所述获取待加载CSV文件包括:

8.一种CSV文件的数据加载装置,其特征在于,包括:

9. 一种电子设备,其特征在于,包括:

10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行根据权利要求1-7中任一权利要求所述的方法。

...

【技术特征摘要】

1.一种csv文件的数据加载方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述根据所述逗号和换行符的位置信息、所述值状态信息以及所述边界状态信息,生成所述待加载csv文件对应的缓冲文件包括:

3.根据权利要求1所述的方法,其特征在于,所述预设偏移量为1字节、2字节、4字节或者8字节。

4.根据权利要求1所述的方法,其特征在于,所述基于所述缓冲文件,读取所述待加载csv文件包括:

5.根据权利要求1所述的方法,其特征在于,所述基于所述缓冲文件,读...

【专利技术属性】
技术研发人员:郝伟沈传宝刘加瑞
申请(专利权)人:安徽华云安科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1