main
黄海 8 months ago
parent 2b703b93a4
commit d18ecaba83

@ -576,6 +576,8 @@ public class ExcelKit {
List<List<String>> transposed = new ArrayList<>(); List<List<String>> transposed = new ArrayList<>();
List<Element> xList = new ArrayList<>(); List<Element> xList = new ArrayList<>();
List<Element> children = root.element("chart").element("plotArea").elements(); List<Element> children = root.element("chart").element("plotArea").elements();
List<Object> listObject = new ArrayList<>();
for (Element child : children) { for (Element child : children) {
//将CHART_TYPES数组转换为List //将CHART_TYPES数组转换为List
List<String> CHART_TYPES_LIST = Arrays.asList(CHART_TYPES); List<String> CHART_TYPES_LIST = Arrays.asList(CHART_TYPES);
@ -587,29 +589,34 @@ public class ExcelKit {
Element q = root.element("chart"); Element q = root.element("chart");
q = q.element("plotArea"); q = q.element("plotArea");
q = q.element(type); q = q.element(type);
q = q.element("ser"); for (Element w : q.elements("ser")) {
q = q.element("cat"); q = w.element("cat");
if (q == null) return null; q = q.element("numRef");
q = q.element("numRef"); Element p = q.element("f");
q = q.element("numCache"); System.out.println(p.getText());
xList = q.elements("pt");
q = q.element("numCache");
List<Object> listObject = new ArrayList<>(); xList = q.elements("pt");
///c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser/c:val/c:numRef/c:numCache
for (Element ser : root.element("chart").element("plotArea").element(type).elements("ser")) {
List<Element> yList = ser.element("val").element("numRef").element("numCache").elements("pt"); ///c:chartSpace/c:chart/c:plotArea/c:lineChart/c:ser/c:val/c:numRef/c:numCache
for (Element ser : root.element("chart").element("plotArea").element(type).elements("ser")) {
//记录都有哪些有效数值和索引号 List<Element> yList = ser.element("val").element("numRef").element("numCache").elements("pt");
Map<Integer, Element> map = new HashMap<>();
for (Element e : yList) { //记录都有哪些有效数值和索引号
map.put(Integer.parseInt(e.attribute("idx").getValue()), e); Map<Integer, Element> map = new HashMap<>();
} for (Element e : yList) {
List<Object> list = new ArrayList<>(); map.put(Integer.parseInt(e.attribute("idx").getValue()), e);
for (int i = 0; i < xList.size(); i++) { }
list.add(map.getOrDefault(i, null)); List<Object> list = new ArrayList<>();
for (int i = 0; i < xList.size(); i++) {
list.add(map.getOrDefault(i, null));
}
listObject.add(list);
} }
listObject.add(list);
} }
//数据是按行读取的 //数据是按行读取的
for (int i = 0; i < listObject.size(); i++) { for (int i = 0; i < listObject.size(); i++) {
List<String> row = new ArrayList<>(); List<String> row = new ArrayList<>();

File diff suppressed because it is too large Load Diff

@ -12,7 +12,6 @@ import java.util.List;
public class TestOutSideExcel { public class TestOutSideExcel {
public static void main(String[] args) throws IOException, InvalidFormatException, InterruptedException, ParserConfigurationException, SAXException, XPathExpressionException, DocumentException { public static void main(String[] args) throws IOException, InvalidFormatException, InterruptedException, ParserConfigurationException, SAXException, XPathExpressionException, DocumentException {
String sourceDoc = "D:\\dsWork\\YunNanDsBase\\Doc\\待处理\\区\\【12】新-教育资源配置发展预测\\6.11鲁甸县)《县(区)人口变化及其对教育的影响》(4).docx"; String sourceDoc = "D:\\dsWork\\YunNanDsBase\\Doc\\待处理\\区\\【12】新-教育资源配置发展预测\\6.11鲁甸县)《县(区)人口变化及其对教育的影响》(4).docx";
//需要第几个图表 //需要第几个图表

Loading…
Cancel
Save