20
0

Мелкие изменения

This commit is contained in:
korv1982 2017-10-23 11:14:16 +03:00
parent 75efccf7f9
commit 18a6340e66
2 changed files with 12 additions and 3 deletions

View File

@ -6,6 +6,7 @@ import (
"io" "io"
"os" "os"
"unicode/utf16" "unicode/utf16"
"golang.org/x/text/encoding/charmap"
) )
//xls workbook type //xls workbook type
@ -160,12 +161,17 @@ func (wb *WorkBook) parseBof(buf io.ReadSeeker, b *bof, pre *bof, offset_pre int
} }
return return
} }
func decodeWindows1251(enc []byte) string {
dec := charmap.Windows1251.NewDecoder()
out, _ := dec.Bytes(enc)
return string(out)
}
func (w *WorkBook) get_string(buf io.ReadSeeker, size uint16) (res string, err error) { func (w *WorkBook) get_string(buf io.ReadSeeker, size uint16) (res string, err error) {
if w.Is5ver { if w.Is5ver {
var bts = make([]byte, size) var bts = make([]byte, size)
_, err = buf.Read(bts) _, err = buf.Read(bts)
res = string(bts) res = decodeWindows1251(bts)
//res = string(bts)
} else { } else {
var richtext_num = uint16(0) var richtext_num = uint16(0)
var phonetic_size = uint32(0) var phonetic_size = uint32(0)

5
xls.go
View File

@ -27,7 +27,10 @@ func OpenReader(reader io.ReadSeeker, charset string) (wb *WorkBook, err error)
for _, file := range dir { for _, file := range dir {
name := file.Name() name := file.Name()
if name == "Workbook" { if name == "Workbook" {
book = file if book == nil {
book = file
}
//book = file
// break // break
} }
if name == "Book" { if name == "Book" {