xmlContentTypes.go 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. package xlsx
  2. import (
  3. "encoding/xml"
  4. )
  5. type xlsxTypes struct {
  6. XMLName xml.Name `xml:"http://schemas.openxmlformats.org/package/2006/content-types Types"`
  7. Overrides []xlsxOverride `xml:"Override"`
  8. Defaults []xlsxDefault `xml:"Default"`
  9. }
  10. type xlsxOverride struct {
  11. PartName string `xml:",attr"`
  12. ContentType string `xml:",attr"`
  13. }
  14. type xlsxDefault struct {
  15. Extension string `xml:",attr"`
  16. ContentType string `xml:",attr"`
  17. }
  18. func MakeDefaultContentTypes() (types xlsxTypes) {
  19. types.Overrides = make([]xlsxOverride, 7)
  20. types.Defaults = make([]xlsxDefault, 2)
  21. types.Overrides[0].PartName = "/_rels/.rels"
  22. types.Overrides[0].ContentType = "application/vnd.openxmlformats-package.relationships+xml"
  23. types.Overrides[1].PartName = "/docProps/app.xml"
  24. types.Overrides[1].ContentType = "application/vnd.openxmlformats-officedocument.extended-properties+xml"
  25. types.Overrides[2].PartName = "/docProps/core.xml"
  26. types.Overrides[2].ContentType = "application/vnd.openxmlformats-package.core-properties+xml"
  27. types.Overrides[3].PartName = "/xl/_rels/workbook.xml.rels"
  28. types.Overrides[3].ContentType = "application/vnd.openxmlformats-package.relationships+xml"
  29. types.Overrides[4].PartName = "/xl/sharedStrings.xml"
  30. types.Overrides[4].ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml"
  31. types.Overrides[5].PartName = "/xl/styles.xml"
  32. types.Overrides[5].ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"
  33. types.Overrides[6].PartName = "/xl/workbook.xml"
  34. types.Overrides[6].ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"
  35. types.Defaults[0].Extension = "rels"
  36. types.Defaults[0].ContentType = "application/vnd.openxmlformats-package.relationships+xml"
  37. types.Defaults[1].Extension = "xml"
  38. types.Defaults[1].ContentType = "application/xml"
  39. return
  40. }