文件处理
已收录文章:33篇
-
用 Go archive/tar 读取压缩包时,先做本地路径判断,再限制输出根目录并拒绝链接条目,最后用越界和覆盖测试验收解包逻辑。341 收藏
-
Go 程序用 os.CreateTemp 创建临时文件后,删除失败往往不是路径问题,而是文件句柄仍被占用。本文用一个可复现的导入场景拆开 CreateTemp、Close、Remove 的顺序,并说明 Windows 与 Unix 文件系统的行为差异、错误定位和安全清理写法。435 收藏
-
用 Java NIO 的 Files.mismatch 比对两个文件,理解返回首个差异位置、-1 结果、长度差异和异常处理,避免把相同文件与前缀相同文件混为一谈。293 收藏
-
Java Files.walk 返回的是惰性 Stream,遍历大目录时要同时处理流关闭、符号链接深度和中途异常。本文用一个目录清理场景说明 Files.walk 与 walkFileTree 的选择边界,并给出可验证的安全写法。243 收藏
-
Linux 脚本里把 find -print 直接接到 xargs,遇到空格、引号或换行文件名就可能把一个文件拆成多个参数。本文用可复现场景说明 -print0 与 xargs -0 如何配对,解释 -n、-r、-- 参数边界,并给出删除前的预览与验收清单。402 收藏
-
用 Java NIO 扫描配置目录时,PathMatcher 的 glob 规则要和 Path 的相对层级保持一致。本文用 Files.walk、PathMatcher 和小型验收程序说明通配符、路径归一化、空匹配及资源关闭边界。403 收藏
-
处理大文件上传时,反复 bytes 切片会让内存峰值和复制次数一起上升。本文用 Python memoryview、bytearray 和 readinto 组织固定缓冲区,核对切片视图、尾块长度、复用缓冲区和异常恢复边界。413 收藏
-
读取日志头、文件摘要或上传内容前 N 个字节时,io.LimitReader、io.CopyN 和手动缓冲的行为并不一样。本文按目标是限制读取、严格读取还是复用缓冲,给出选择边界、EOF 判断和可验证示例。130 收藏
-
文章 · java教程 | 2个月前 | 文件处理 · 配置管理 · Java · 命令行工具 · nio · Java Files.mismatch 配置目录校验 Files.mismatch Java文件对比部署前想确认两份配置目录是否完全一致,不必先引入第三方 diff 库。本文用 Java NIO 的 Files.mismatch 做一个小型目录核对工具,处理参数校验、相对路径、二进制差异、报告输出和退出状态,最后给出可复查的本地运行方式。371 收藏
-
临时目录清理最容易出问题的地方,不是调用 unlink,而是筛选条件太宽、相对路径越界和删错文件后无法复盘。用 pathlib 统一解析路径,按后缀和 mtime 过滤,先写入待删清单再处理,就能把一次性脚本变成可检查、可回退的清理流程。219 收藏
-
用一个小型 Go 日志筛选器说明如何同时支持文件参数和标准输入,处理参数优先级、逐行读取、字段校验、错误退出码以及管道联调。403 收藏
-
批量计算文件 SHA-256 时,直接为每个文件启动 goroutine 很容易把磁盘和句柄拖满。本文用一个可取消的小工具演示如何用 context、固定 worker 数和结果汇总,把停止、错误和部分结果处理清楚。419 收藏