public Data.RowNode getRowNode()
        {
            int count = 0;
            int ssIndex;

            Data.RowNode         rowNode   = new Data.RowNode();
            List <Data.CellNode> cellNodes = new List <Data.CellNode>();

            Data.CellNode keyNode = null;
            foreach (XmlElement cellElement in _rowElement.GetElementsByTagName("Cell"))
            {
                if (cellElement.GetAttribute("ss:Index") != "")
                {
                    ssIndex = Int32.Parse(cellElement.GetAttribute("ss:Index"));
                    while (count < ssIndex - 1)
                    {
                        cellNodes.Add(null);
                        count++;
                    }
                }
                if (_isKeyRow)
                {
                    _cellNodeReader = new XmlCellNodeReader(cellElement, _tableNode.getSheetName());
                    if (_cellNodeReader.getCellNode() == null)
                    {
                        continue;
                    }
                    rowNode.addCellNode(_cellNodeReader.getCellNode());
                }
                else
                {
                    //这边判断是不是key和output
                    string key = _tableNode.getKeyStrByIndex(count);
                    _cellNodeReader = new XmlCellNodeReader(cellElement, _tableNode.getSheetName(), key);
                    if (_cellNodeReader.getCellNode() == null)
                    {
                        continue;
                    }
                    code.Data.TranslateFileData.TranslateData translateData = _tableNode.getTranslateData();
                    if (translateData.key == key)
                    {
                        keyNode = _cellNodeReader.getCellNode();
                    }
                    if (translateData.outputStrs.Contains(key))
                    {
                        cellNodes.Add(_cellNodeReader.getCellNode());
                    }
                }
                count++;
            }
            if (!_isKeyRow)
            {
                rowNode.addCellNode(keyNode);
                for (int i = 0; i < cellNodes.Count; i++)
                {
                    rowNode.addCellNode(cellNodes[i]);
                }
            }
            return(rowNode);
        }
Exemple #2
0
        public Data.RowNode getRowNode()
        {
            Data.RowNode         rowNode   = new Data.RowNode();
            List <Data.CellNode> cellNodes = new List <Data.CellNode>();

            Data.CellNode       keyNode = null;
            ExcelCellNodeReader excelCellNodeReader;

            for (int i = _row.FirstCellNum; i < _row.LastCellNum; i++)
            {
                ICell cell = _row.GetCell(i);
                if (cell == null)
                {
                    cellNodes.Add(null);
                }
                else if (_isKeyRow)
                {
                    excelCellNodeReader = new ExcelCellNodeReader(cell, _tableNode.getSheetName());
                    rowNode.addCellNode(excelCellNodeReader.getCellNode());
                }
                else
                {
                    //这边判断是不是key和output
                    string key = _tableNode.getKeyStrByIndex(i);
                    if (key == null)
                    {
                        continue;
                    }
                    excelCellNodeReader = new ExcelCellNodeReader(cell, _tableNode.getSheetName(), key);
                    Data.TranslateFileData.TranslateData translateData = _tableNode.getTranslateData();
                    if (translateData.key == key)
                    {
                        keyNode = excelCellNodeReader.getCellNode();
                    }
                    if (translateData.outputStrs.Contains(key))
                    {
                        cellNodes.Add(excelCellNodeReader.getCellNode());
                    }
                }
            }
            if (!_isKeyRow)
            {
                rowNode.addCellNode(keyNode);
                for (int i = 0; i < cellNodes.Count; i++)
                {
                    rowNode.addCellNode(cellNodes[i]);
                }
            }
            return(rowNode);
        }
Exemple #3
0
 public string getString(Data.CellNode cellNode)
 {
     if (cellNode.getType() == GlobalData.DATA_TYPE.DOUBLE)
     {
         return(GlobalData.getJsonCellBlock() + "    " + "    " + '"' +
                cellNode.getKey() + '"' + ": " + cellNode.getNum());
     }
     if (cellNode.getType() == GlobalData.DATA_TYPE.BOOLEAN)
     {
         return(GlobalData.getJsonCellBlock() + "    " + "    " + '"' +
                cellNode.getKey() + '"' + ": " + (cellNode.getBoolData() ? "true" : "false"));
     }
     if (cellNode.getType() == GlobalData.DATA_TYPE.STRING)
     {
         return(GlobalData.getJsonCellBlock() + "    " + "    " + '"' +
                cellNode.getKey() + '"' + ": " + '"' + cellNode.getStr() + '"');
     }
     return("");
 }