fileLoader.py
概述
utils/fileLoader.py 位于底部基础构件层,是一个与各类存储介质进行交互并且专门处理各式静态文件类型加载解析的统一读取接口收拢器与代理门面。 它屏蔽了关于如何分行读取或反序列特定数据后缀(如 .json, .jsonl, .txt, .csv 乃至复杂多行长文件与带 BOM 头的文本情况等)的区别逻辑,统一将系统需要的素材整理呈现并抛出给对应的处理进程层进行后续接收使用,是一个无状态依赖的数据拉取纯工具函数包。
函数与接口操作集合
_ensure_path_exists(filepath: str)
对输入地址及其所有的上级抽象挂载分支执行强制校验:若存在目录空洞缺失的部分则利用诸如 os.makedirs 的文件系统指令对相应的节点层级树补全,用以规避接下来进行存储阶段抛出找不到上级节点的崩溃环境。
load_json(filepath: str) -> dict | list
封装常用的标准的 JSON 全量反序加载方案库,同时增加对非存在或者是文件为空的错误捕捉或者警告打回方法以防止直接解析崩盘挂起项目应用。返回值即解析映射过来的等价词典类或者数组列对象。
load_jsonl(filepath: str) -> list[dict]
对 JSON-Lines (数据流大模型领域常用逐行处理存储结构)特殊制订的文件读取方法器:依靠生成器(或者带截断机制的一组返回数组)去对大量每行是一颗独立结构性树的文件完成序列化反推解析操作提取出来列表包装好结构集合反馈组。
save_json(data, filepath: str, ensure_ascii=False, indent=4)
反向处理序列的落地归档功能实现端:其接受对象字典组和数组并且将其转化成为整齐美观格式(支持默认的对汉字以及其它各种非美语符的不强行转换转义 ensure_ascii 机制处理)将其序列化压入文件实体操作组件。
save_jsonl(data_list, filepath: str)
与对应获取端呼应写盘工具操作类方法机制功能结构实现。进行高效率的多条循环无状态对特定目标指针连续刷入(每列都是被序列化的单元素字典且携带末尾换行转义格式写盘操作输出)。
read_text_safe(filepath: str, default="") -> str
一个安全的防止解码编排格式报异常乱码崩溃等通用文件字串文本直接读取门面封装操作组件。当解析不可修复文件或者是遇到非支持结构字符编码情况的时候将会回落给出一个安全字符并且抛出一个日志用以不引起上层阻断停机工作进行的一种错误屏蔽软兜底逻辑函数工具实现处理办法组件。