excel

package
v0.0.0-...-ebdd804 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 2, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"

Variables

This section is empty.

Functions

func DerefValueAndType

func DerefValueAndType(val interface{}) (reflect.Value, reflect.Type)

func ValueOf

func ValueOf(val interface{}) reflect.Value

ValueOf differs from reflect.ValueOf in that it returns the argument val casted to reflect.Value if val is alread a reflect.Value. Else the standard result of reflect.ValueOf(val) will be returned.

Types

type ExcelCellWriter

type ExcelCellWriter interface {
	WriteCell(cell *xlsx.Cell, val reflect.Value, config *ExcelFormatConfig) error
}

type ExcelCellWriterFunc

type ExcelCellWriterFunc func(cell *xlsx.Cell, val reflect.Value, config *ExcelFormatConfig) error

func (ExcelCellWriterFunc) WriteCell

func (f ExcelCellWriterFunc) WriteCell(cell *xlsx.Cell, val reflect.Value, config *ExcelFormatConfig) error

type ExcelFormatConfig

type ExcelFormatConfig struct {
	// https://exceljet.net/custom-number-formats
	Time     string
	Date     string
	Location *time.Location
	Null     string
}

type Reader

type Reader struct {
	// contains filtered or unexported fields
}

func NewReader

func NewReader(xlsxFile fs.FileReader, sheetName string) (*Reader, error)

NewReader creates a new structtable.Reader for the sheet sheetName in xlsxFile. If sheetName is "", then the first sheet will be used. Note: Reader only reads into string kind struct fields so far.

func (*Reader) NumRows

func (r *Reader) NumRows() int

func (*Reader) ReadRow

func (r *Reader) ReadRow(rowIndex int, destStruct reflect.Value) error

func (*Reader) ReadRowStrings

func (r *Reader) ReadRowStrings(rowIndex int) ([]string, error)

func (*Reader) SheetName

func (r *Reader) SheetName() string

type Renderer

type Renderer struct {
	Config          ExcelFormatConfig
	TypeCellWriters map[reflect.Type]ExcelCellWriter
	// contains filtered or unexported fields
}

func NewRenderer

func NewRenderer(sheetName string) (*Renderer, error)

func (*Renderer) AddSheet

func (excel *Renderer) AddSheet(name string) error

func (*Renderer) MIMEType

func (*Renderer) MIMEType() string

func (*Renderer) RenderHeaderRow

func (excel *Renderer) RenderHeaderRow(columnTitles []string) error

func (*Renderer) RenderRow

func (excel *Renderer) RenderRow(columnValues []reflect.Value) error

func (*Renderer) Result

func (excel *Renderer) Result() ([]byte, error)

func (*Renderer) SetCurrentSheet

func (excel *Renderer) SetCurrentSheet(name string) error

func (*Renderer) WriteResultFile

func (excel *Renderer) WriteResultFile(file fs.File, perm ...fs.Permissions) error

func (*Renderer) WriteResultTo

func (excel *Renderer) WriteResultTo(writer io.Writer) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL