package main
import (
"fmt"
"os"
)
func main() {
path := "xxxx"
readWord(path)
fmt.Println("执行完毕!\r\n")
}
func readWord(path string) error {
defer func() {
if p := recover(); p != nil {
fmt.Errorf("internal error: %v", p)
}
}()
file, err := os.Open(path)
if err != nil {
return err
}
defer file.Close()
fileInfo, e := file.Stat()
if e != nil {
return e
}
if fileInfo.IsDir() {
fileNames, err := file.Readdirnames(0)
if err != nil {
return err
}
//fmt.Println(fileNames)
for _, fName := range fileNames {
if fName == "xxx" {
continue
}
newPath := path + "\\" + fName
err := readWord(newPath)
fmt.Println(err)
}
} else {
data := make([]byte, 500)
tmp := make([]byte, 500)
var locat int64 = 0
for _, err := file.ReadAt(tmp, locat); err != nil; locat += 400 {
data = append(data, tmp...)
}
....//文档操作
return err
}
return nil
}
递归文档读取
最新推荐文章于 2024-02-19 10:51:41 发布