惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

G
Google Developers Blog
博客园 - 聂微东
J
Java Code Geeks
Engineering at Meta
Engineering at Meta
Jina AI
Jina AI
D
Docker
B
Blog
S
SegmentFault 最新的问题
宝玉的分享
宝玉的分享
D
DataBreaches.Net
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Y
Y Combinator Blog
N
Netflix TechBlog - Medium
月光博客
月光博客
F
Fortinet All Blogs
爱范儿
爱范儿
H
Help Net Security
腾讯CDC
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
WordPress大学
WordPress大学
The Cloudflare Blog
有赞技术团队
有赞技术团队
T
Tailwind CSS Blog
U
Unit 42

博客园 - 雨V幕

使用chromedp 来做人工模拟操作爬取数据方法 遍历redis按照前缀给未设置过期时间的数据添加过期时间 使用rabbitmq 进行任务调度 使用trace进行排查网络瓶颈 使用vscode 调试 Python 使用postman 添加预处理验签。 go 使用pprof 进行问题排查 Mysql无主键删除重复数据的快速方法 解决mysql 事务死锁的方法 go在处理批量下载时候出现fatal error: runtime: out of memory AnalyticDB 创建db go 序列化反序列化之后时区信息丢失 clickhouse 进行建表期间的一些优化 kraots2.0 在windows 环境搭建开发环境 Sql Server使用函数获取拼音码 关于async 和await关键字 使用kubespray 一键部署 containerd 的安装和熟悉 VMware 配置双网卡实现上网和固定ip
使用power shell 拆分 csv文件 将大文件拆分成小文件。
雨V幕 · 2025-05-07 · via 博客园 - 雨V幕
$sourceFile = "C:\path\to\your\large_file.csv"
$outputDir = "C:\path\to\output"
$chunkSize = 500MB
$bufferSize = 4MB

# 创建输出目录
New-Item -ItemType Directory -Force -Path $outputDir | Out-Null

$reader = [System.IO.StreamReader]::new($sourceFile)
$header = $reader.ReadLine()

$i = 1
$writer = $null
$bytesWritten = 0

while (!$reader.EndOfStream) {
    $outFile = "$outputDir\part_$i.csv"
    $writer = [System.IO.StreamWriter]::new($outFile)
    $writer.WriteLine($header)
    $bytesWritten = [Text.Encoding]::UTF8.GetByteCount($header + "`n")

    while (($line = $reader.ReadLine()) -ne $null) {
        $lineBytes = [Text.Encoding]::UTF8.GetByteCount($line + "`n")
        if ($bytesWritten + $lineBytes -ge $chunkSize) {
            break
        }
        $writer.WriteLine($line)
        $bytesWritten += $lineBytes
    }

    $writer.Close()
    $i++
}

$reader.Close()
Write-Output "拆分完成,共拆成 $($i - 1) 个文件。"