关于Go读取XML中Worksheet的问题

Go小白,在开发过程中遇到了读取xml的操作,但是xml里的数据是以Excel中Worksheet结构存储的,请问该如何正确提取呢?
↓ xml中的Worksheet ↓

 <?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:o="urn:schemas-microsoft-com:office:office"
 xmlns:x="urn:schemas-microsoft-com:office:excel"
 xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:html="http://www.w3.org/TR/REC-html40">
 <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
  <Author>zhangyikun</Author>
  <LastAuthor>user</LastAuthor>
  <Created>2013-10-21T08:50:44Z</Created>
  <LastSaved>2013-11-22T02:12:41Z</LastSaved>
  <Version>15.00</Version>
 </DocumentProperties>
 <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
  <AllowPNG/>
 </OfficeDocumentSettings>
 <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
  <WindowHeight>7785</WindowHeight>
  <WindowWidth>18840</WindowWidth>
  <WindowTopX>0</WindowTopX>
  <WindowTopY>0</WindowTopY>
  <ProtectStructure>False</ProtectStructure>
  <ProtectWindows>False</ProtectWindows>
 </ExcelWorkbook>
 <Styles>
  <Style ss:ID="Default" ss:Name="Normal">
   <Alignment ss:Vertical="Center"/>
   <Borders/>
   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
   <Interior/>
   <NumberFormat/>
   <Protection/>
  </Style>
  <Style ss:ID="s62" ss:Name="常规 2">
   <Alignment ss:Vertical="Center"/>
   <Borders/>
   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="9" ss:Color="#000000"/>
   <Interior/>
   <NumberFormat/>
   <Protection/>
  </Style>
  <Style ss:ID="s63">
   <NumberFormat ss:Format="@"/>
  </Style>
  <Style ss:ID="s64">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
   <NumberFormat ss:Format="@"/>
  </Style>
  <Style ss:ID="s65">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
  </Style>
  <Style ss:ID="s67" ss:Parent="s62">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
   <Borders/>
   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="9" ss:Color="#000000"/>
   <Interior ss:Color="#C0C0C0" ss:Pattern="Solid"/>
   <Protection ss:Protected="0"/>
  </Style>
 </Styles>
 <Worksheet ss:Name="Sheet">
  <Table ss:ExpandedColumnCount="20" ss:ExpandedRowCount="28" x:FullColumns="1"
   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
   <Column ss:StyleID="s63" ss:Width="68.25"/>
   <Column ss:StyleID="s63" ss:Width="45"/>
   <Column ss:Width="36" ss:Span="1"/>
   <Column ss:Index="5" ss:Width="45"/>
   <Column ss:Width="63"/>
   <Column ss:Width="45" ss:Span="1"/>
   <Column ss:Index="9" ss:Width="36"/>
   <Column ss:Width="45"/>
   <Column ss:Index="12" ss:Width="45" ss:Span="1"/>
   <Column ss:Index="14" ss:Width="63"/>
   <Column ss:Width="45"/>
   <Column ss:Width="73.5"/>
   <Column ss:Width="45" ss:Span="2"/>
   <Column ss:Index="20" ss:Width="27"/>
   <Row ss:AutoFitHeight="0" ss:StyleID="s65">
    <Cell ss:StyleID="s67"><Data ss:Type="String">收货/送检单号</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">是否加急</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">送检人</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验员</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">送检时间</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验完成时间</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">物料编码</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">物料名称</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">供应商</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">收货数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">供应商批次</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">存放位置</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">物料状态</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验破坏数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验不合格数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验状态</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验结果</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">审核状态</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">备注</Data></Cell>
   <Row ss:AutoFitHeight="0">
    <Cell><Data ss:Type="String">XXX</Data></Cell>
    <Cell><Data ss:Type="String">XXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">EBXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXXXXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">0</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">0</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">0</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">待检验</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">未检验</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">未检验</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
   </Row>
  </Table>
  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
   <PageSetup>
    <Header x:Margin="0.3"/>
    <Footer x:Margin="0.3"/>
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
   </PageSetup>
   <Unsynced/>
   <Print>
    <ValidPrinterInfo/>
    <PaperSizeIndex>9</PaperSizeIndex>
    <HorizontalResolution>1200</HorizontalResolution>
    <VerticalResolution>1200</VerticalResolution>
   </Print>
   <Selected/>
   <Panes>
    <Pane>
     <Number>3</Number>
     <ActiveRow>22</ActiveRow>
     <ActiveCol>11</ActiveCol>
    </Pane>
   </Panes>
   <ProtectObjects>False</ProtectObjects>
   <ProtectScenarios>False</ProtectScenarios>
  </WorksheetOptions>
 </Worksheet>
</Workbook>

image.png

阅读 2.3k
1 个回答

主要用标准库 encoding/xml 解析 xml

package main

import "fmt"
import "encoding/xml"

type Workbook struct {
    XMLName                xml.Name               `xml:"Workbook"`
    Text                   string                 `xml:",chardata"`
    Xmlns                  string                 `xml:"xmlns,attr"`
    O                      string                 `xml:"o,attr"`
    X                      string                 `xml:"x,attr"`
    Ss                     string                 `xml:"ss,attr"`
    Html                   string                 `xml:"html,attr"`
    DocumentProperties     DocumentProperties     `xml:"DocumentProperties"`
    OfficeDocumentSettings OfficeDocumentSettings `xml:"OfficeDocumentSettings"`
    ExcelWorkbook          ExcelWorkbook          `xml:"ExcelWorkbook"`
    Styles                 Styles                 `xml:"Styles"`
    Worksheet              Worksheet              `xml:"Worksheet"`
}

type DocumentProperties struct {
    Text   string `xml:",chardata"`
    Xmlns  string `xml:"xmlns,attr"`
    Author struct {
        Text string `xml:",chardata"`
    } `xml:"Author"`
    LastAuthor struct {
        Text string `xml:",chardata"`
    } `xml:"LastAuthor"`
    Created struct {
        Text string `xml:",chardata"`
    } `xml:"Created"`
    LastSaved struct {
        Text string `xml:",chardata"`
    } `xml:"LastSaved"`
    Version struct {
        Text string `xml:",chardata"`
    } `xml:"Version"`
}
type OfficeDocumentSettings struct {
    Text     string `xml:",chardata"`
    Xmlns    string `xml:"xmlns,attr"`
    AllowPNG struct {
        Text string `xml:",chardata"`
    } `xml:"AllowPNG"`
}
type ExcelWorkbook struct {
    Text         string `xml:",chardata"`
    Xmlns        string `xml:"xmlns,attr"`
    WindowHeight struct {
        Text string `xml:",chardata"`
    } `xml:"WindowHeight"`
    WindowWidth struct {
        Text string `xml:",chardata"`
    } `xml:"WindowWidth"`
    WindowTopX struct {
        Text string `xml:",chardata"`
    } `xml:"WindowTopX"`
    WindowTopY struct {
        Text string `xml:",chardata"`
    } `xml:"WindowTopY"`
    ProtectStructure struct {
        Text string `xml:",chardata"`
    } `xml:"ProtectStructure"`
    ProtectWindows struct {
        Text string `xml:",chardata"`
    } `xml:"ProtectWindows"`
}
type Styles struct {
    Text  string `xml:",chardata"`
    Style []struct {
        Text      string `xml:",chardata"`
        ID        string `xml:"ID,attr"`
        Name      string `xml:"Name,attr"`
        Parent    string `xml:"Parent,attr"`
        Alignment struct {
            Text       string `xml:",chardata"`
            Vertical   string `xml:"Vertical,attr"`
            Horizontal string `xml:"Horizontal,attr"`
        } `xml:"Alignment"`
        Borders struct {
            Text string `xml:",chardata"`
        } `xml:"Borders"`
        Font struct {
            Text     string `xml:",chardata"`
            FontName string `xml:"FontName,attr"`
            CharSet  string `xml:"CharSet,attr"`
            Size     string `xml:"Size,attr"`
            Color    string `xml:"Color,attr"`
        } `xml:"Font"`
        Interior struct {
            Text    string `xml:",chardata"`
            Color   string `xml:"Color,attr"`
            Pattern string `xml:"Pattern,attr"`
        } `xml:"Interior"`
        NumberFormat struct {
            Text   string `xml:",chardata"`
            Format string `xml:"Format,attr"`
        } `xml:"NumberFormat"`
        Protection struct {
            Text      string `xml:",chardata"`
            Protected string `xml:"Protected,attr"`
        } `xml:"Protection"`
    } `xml:"Style"`
}
type Worksheet struct {
    Text  string `xml:",chardata"`
    Name  string `xml:"Name,attr"`
    Table struct {
        Text                string `xml:",chardata"`
        ExpandedColumnCount string `xml:"ExpandedColumnCount,attr"`
        ExpandedRowCount    string `xml:"ExpandedRowCount,attr"`
        FullColumns         string `xml:"FullColumns,attr"`
        FullRows            string `xml:"FullRows,attr"`
        DefaultColumnWidth  string `xml:"DefaultColumnWidth,attr"`
        DefaultRowHeight    string `xml:"DefaultRowHeight,attr"`
        Column              []struct {
            Text    string `xml:",chardata"`
            StyleID string `xml:"StyleID,attr"`
            Width   string `xml:"Width,attr"`
            Span    string `xml:"Span,attr"`
            Index   string `xml:"Index,attr"`
        } `xml:"Column"`
        Row []struct {
            Text          string `xml:",chardata"`
            AutoFitHeight string `xml:"AutoFitHeight,attr"`
            StyleID       string `xml:"StyleID,attr"`
            Cell          []struct {
                Text    string `xml:",chardata"`
                StyleID string `xml:"StyleID,attr"`
                Data    struct {
                    Text string `xml:",chardata"`
                    Type string `xml:"Type,attr"`
                } `xml:"Data"`
            } `xml:"Cell"`
        } `xml:"Row"`
    } `xml:"Table"`
    WorksheetOptions struct {
        Text      string `xml:",chardata"`
        Xmlns     string `xml:"xmlns,attr"`
        PageSetup struct {
            Text   string `xml:",chardata"`
            Header struct {
                Text   string `xml:",chardata"`
                Margin string `xml:"Margin,attr"`
            } `xml:"Header"`
            Footer struct {
                Text   string `xml:",chardata"`
                Margin string `xml:"Margin,attr"`
            } `xml:"Footer"`
            PageMargins struct {
                Text   string `xml:",chardata"`
                Bottom string `xml:"Bottom,attr"`
                Left   string `xml:"Left,attr"`
                Right  string `xml:"Right,attr"`
                Top    string `xml:"Top,attr"`
            } `xml:"PageMargins"`
        } `xml:"PageSetup"`
        Unsynced struct {
            Text string `xml:",chardata"`
        } `xml:"Unsynced"`
        Print struct {
            Text             string `xml:",chardata"`
            ValidPrinterInfo struct {
                Text string `xml:",chardata"`
            } `xml:"ValidPrinterInfo"`
            PaperSizeIndex struct {
                Text string `xml:",chardata"`
            } `xml:"PaperSizeIndex"`
            HorizontalResolution struct {
                Text string `xml:",chardata"`
            } `xml:"HorizontalResolution"`
            VerticalResolution struct {
                Text string `xml:",chardata"`
            } `xml:"VerticalResolution"`
        } `xml:"Print"`
        Selected struct {
            Text string `xml:",chardata"`
        } `xml:"Selected"`
        Panes struct {
            Text string `xml:",chardata"`
            Pane struct {
                Text   string `xml:",chardata"`
                Number struct {
                    Text string `xml:",chardata"`
                } `xml:"Number"`
                ActiveRow struct {
                    Text string `xml:",chardata"`
                } `xml:"ActiveRow"`
                ActiveCol struct {
                    Text string `xml:",chardata"`
                } `xml:"ActiveCol"`
            } `xml:"Pane"`
        } `xml:"Panes"`
        ProtectObjects struct {
            Text string `xml:",chardata"`
        } `xml:"ProtectObjects"`
        ProtectScenarios struct {
            Text string `xml:",chardata"`
        } `xml:"ProtectScenarios"`
    } `xml:"WorksheetOptions"`
}

func main() {
    var book Workbook
    err := xml.Unmarshal([]byte(xmldata), &book)
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(book.Worksheet.Table.Row)
}

var xmldata = `
 <?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:o="urn:schemas-microsoft-com:office:office"
 xmlns:x="urn:schemas-microsoft-com:office:excel"
 xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
 xmlns:html="http://www.w3.org/TR/REC-html40">
 <DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
  <Author>zhangyikun</Author>
  <LastAuthor>user</LastAuthor>
  <Created>2013-10-21T08:50:44Z</Created>
  <LastSaved>2013-11-22T02:12:41Z</LastSaved>
  <Version>15.00</Version>
 </DocumentProperties>
 <OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
  <AllowPNG/>
 </OfficeDocumentSettings>
 <ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
  <WindowHeight>7785</WindowHeight>
  <WindowWidth>18840</WindowWidth>
  <WindowTopX>0</WindowTopX>
  <WindowTopY>0</WindowTopY>
  <ProtectStructure>False</ProtectStructure>
  <ProtectWindows>False</ProtectWindows>
 </ExcelWorkbook>
 <Styles>
  <Style ss:ID="Default" ss:Name="Normal">
   <Alignment ss:Vertical="Center"/>
   <Borders/>
   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="11" ss:Color="#000000"/>
   <Interior/>
   <NumberFormat/>
   <Protection/>
  </Style>
  <Style ss:ID="s62" ss:Name="常规 2">
   <Alignment ss:Vertical="Center"/>
   <Borders/>
   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="9" ss:Color="#000000"/>
   <Interior/>
   <NumberFormat/>
   <Protection/>
  </Style>
  <Style ss:ID="s63">
   <NumberFormat ss:Format="@"/>
  </Style>
  <Style ss:ID="s64">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
   <NumberFormat ss:Format="@"/>
  </Style>
  <Style ss:ID="s65">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
  </Style>
  <Style ss:ID="s67" ss:Parent="s62">
   <Alignment ss:Horizontal="Center" ss:Vertical="Center"/>
   <Borders/>
   <Font ss:FontName="宋体" x:CharSet="134" ss:Size="9" ss:Color="#000000"/>
   <Interior ss:Color="#C0C0C0" ss:Pattern="Solid"/>
   <Protection ss:Protected="0"/>
  </Style>
 </Styles>
 <Worksheet ss:Name="Sheet">
  <Table ss:ExpandedColumnCount="20" ss:ExpandedRowCount="28" x:FullColumns="1"
   x:FullRows="1" ss:DefaultColumnWidth="54" ss:DefaultRowHeight="13.5">
   <Column ss:StyleID="s63" ss:Width="68.25"/>
   <Column ss:StyleID="s63" ss:Width="45"/>
   <Column ss:Width="36" ss:Span="1"/>
   <Column ss:Index="5" ss:Width="45"/>
   <Column ss:Width="63"/>
   <Column ss:Width="45" ss:Span="1"/>
   <Column ss:Index="9" ss:Width="36"/>
   <Column ss:Width="45"/>
   <Column ss:Index="12" ss:Width="45" ss:Span="1"/>
   <Column ss:Index="14" ss:Width="63"/>
   <Column ss:Width="45"/>
   <Column ss:Width="73.5"/>
   <Column ss:Width="45" ss:Span="2"/>
   <Column ss:Index="20" ss:Width="27"/>
   <Row ss:AutoFitHeight="0" ss:StyleID="s65">
    <Cell ss:StyleID="s67"><Data ss:Type="String">收货/送检单号</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">是否加急</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">送检人</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验员</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">送检时间</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验完成时间</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">物料编码</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">物料名称</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">供应商</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">收货数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">供应商批次</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">存放位置</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">物料状态</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验破坏数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验不合格数量</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验状态</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">检验结果</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">审核状态</Data></Cell>
    <Cell ss:StyleID="s67"><Data ss:Type="String">备注</Data></Cell>
   </Row>
   <Row ss:AutoFitHeight="0">
    <Cell><Data ss:Type="String">XXX</Data></Cell>
    <Cell><Data ss:Type="String">XXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">EBXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXXXXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">XXX</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">0</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">0</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">0</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">待检验</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">未检验</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">未检验</Data></Cell>
    <Cell ss:StyleID="s64"><Data ss:Type="String">           </Data></Cell>
   </Row>
  </Table>
  <WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
   <PageSetup>
    <Header x:Margin="0.3"/>
    <Footer x:Margin="0.3"/>
    <PageMargins x:Bottom="0.75" x:Left="0.7" x:Right="0.7" x:Top="0.75"/>
   </PageSetup>
   <Unsynced/>
   <Print>
    <ValidPrinterInfo/>
    <PaperSizeIndex>9</PaperSizeIndex>
    <HorizontalResolution>1200</HorizontalResolution>
    <VerticalResolution>1200</VerticalResolution>
   </Print>
   <Selected/>
   <Panes>
    <Pane>
     <Number>3</Number>
     <ActiveRow>22</ActiveRow>
     <ActiveCol>11</ActiveCol>
    </Pane>
   </Panes>
   <ProtectObjects>False</ProtectObjects>
   <ProtectScenarios>False</ProtectScenarios>
  </WorksheetOptions>
 </Worksheet>
</Workbook>
`

结构体可以使用xml转go结构体进行快速转换

上述代码打印输出了excel中的两行数据,你可以根据自己的需要进行处理,当前在结构体 Workbook中你先可以只定义你想要解析的字段进行提取。

注意: 你提供的xml数据中,第一行的标签<Row> 缺一个 </Row>, 我提供的代码中已经做了补充

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题