123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- package xlsx
- import (
- "strconv"
- "time"
- )
- // StreamCell holds the data, style and type of cell for streaming.
- type StreamCell struct {
- cellData string
- cellStyle StreamStyle
- cellType CellType
- }
- // NewStreamCell creates a new cell containing the given data with the given style and type.
- func NewStreamCell(cellData string, cellStyle StreamStyle, cellType CellType) StreamCell {
- return StreamCell{
- cellData: cellData,
- cellStyle: cellStyle,
- cellType: cellType,
- }
- }
- // NewStringStreamCell creates a new cell that holds string data, is of type string and uses general formatting.
- func NewStringStreamCell(cellData string) StreamCell {
- return NewStreamCell(cellData, StreamStyleDefaultString, CellTypeString)
- }
- // NewStyledStringStreamCell creates a new cell that holds a string and is styled according to the given style.
- func NewStyledStringStreamCell(cellData string, cellStyle StreamStyle) StreamCell {
- return NewStreamCell(cellData, cellStyle, CellTypeString)
- }
- // NewIntegerStreamCell creates a new cell that holds an integer value (represented as string),
- // is formatted as a standard integer and is of type numeric.
- func NewIntegerStreamCell(cellData int) StreamCell {
- return NewStreamCell(strconv.Itoa(cellData), StreamStyleDefaultInteger, CellTypeNumeric)
- }
- // NewStyledIntegerStreamCell creates a new cell that holds an integer value (represented as string)
- // and is styled according to the given style.
- func NewStyledIntegerStreamCell(cellData int, cellStyle StreamStyle) StreamCell {
- return NewStreamCell(strconv.Itoa(cellData), cellStyle, CellTypeNumeric)
- }
- // NewDateStreamCell creates a new cell that holds a date value and is formatted as dd-mm-yyyy
- // and is of type numeric.
- func NewDateStreamCell(t time.Time) StreamCell {
- excelTime := TimeToExcelTime(t, false)
- return NewStreamCell(strconv.Itoa(int(excelTime)), StreamStyleDefaultDate, CellTypeNumeric)
- }
|