首次提交:初始化项目代码

This commit is contained in:
sunct
2026-07-31 15:18:32 +08:00
commit d6393266b0
193 changed files with 14287 additions and 0 deletions
+59
View File
@@ -0,0 +1,59 @@
package main
import (
"bufio"
"fmt"
"io"
"os"
)
// 大文件缓冲读写:逐行处理,内存占用恒定
func bigFileRW() {
// 打开源文件
srcFile, err := os.Open("file/large_file.txt")
if err != nil {
fmt.Printf("打开源文件失败: %v\n", err)
return
}
defer srcFile.Close()
// 创建目标文件
dstFile, err := os.Create("file/copy_large_file.txt")
if err != nil {
fmt.Printf("创建目标文件失败: %v\n", err)
return
}
defer dstFile.Close()
// 创建缓冲读写器
reader := bufio.NewReader(srcFile)
writer := bufio.NewWriter(dstFile)
defer func() {
// 刷新缓冲区并检查错误
if err := writer.Flush(); err != nil {
fmt.Printf("缓冲区刷新失败: %v\n", err)
}
}()
// 逐行读取写入
for {
line, err := reader.ReadString('\n')
if err == io.EOF {
break
}
if err != nil {
fmt.Printf("读取失败: %v\n", err)
return
}
_, err = writer.WriteString(line)
if err != nil {
fmt.Printf("写入失败: %v\n", err)
return
}
}
fmt.Println("大文件拷贝完成")
}
func main() {
bigFileRW()
}