有没有大神 知道,go 处理解压, rar格式压缩包的
一个简单的示例,不过这个库还不支持压缩
```go
package main
import (
"fmt"
"io/ioutil"
"github.com/mholt/archiver"
"github.com/nwaples/rardecode"
)
func main() {
r := archiver.NewRar()
err := r.Walk("mytest.rar", func(f archiver.File) error {
rh, ok := f.Header.(*rardecode.FileHeader)
if !ok {
return fmt.Errorf("expected header")
}
fmt.Println("FileName:", rh.Name)
content, err := ioutil.ReadAll(f)
if err != nil {
return err
}
fmt.Println("FileContent:", string(content))
return nil
})
if err != nil {
panic(err)
}
err = r.Unarchive("mytest.rar", "mytest")
if err != nil {
panic(err)
}
}
```
#2
更多评论