Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "fmt"
- "io/ioutil"
- "os"
- )
- func main() {
- fmt.Println("Hello, playground")
- data := []byte{65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0}
- fileNm := "test"
- ioutil.WriteFile(fileNm, data, 0644)
- rslt, _ := ioutil.ReadFile(fileNm)
- fmt.Println("string:", string(rslt), ", []byte:", rslt, ", length:", len(rslt))
- f, _ := os.Open(fileNm)
- defer f.Close()
- info, _ := f.Stat()
- lo := int64(0)
- hi := info.Size() - 1
- var buf [1]byte
- for lo <= hi {
- mid := (lo + hi) / 2
- f.ReadAt(buf[:], mid)
- if buf[0] == byte(0) {
- hi = mid - 1
- } else {
- lo = mid + 1
- }
- }
- if lo != info.Size() {
- os.Truncate(fileNm, lo)
- }
- rslt, _ = ioutil.ReadFile(fileNm)
- fmt.Println("string:", string(rslt), ", []byte:", rslt, ", length:", len(rslt))
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement