繁体   English   中英

我怎样才能将我的javacode输出作为json

[英]How can i get my javacode output as json

我正在使用Apache POI读取xlsx文件。 我能够获取结果,并且xlsx实体成功计数。 但我想在我的JSON结果,这样我就可以用这个JSON数据,使google graph或任何graph API 我是Java新手,该怎么办? 任何帮助将不胜感激。

我的代码详细信息如下。

package com.amiku.Excel;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.*;

import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.FormulaEvaluator;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

public class ExcelReader
{
    public static void main(String[] args) throws IOException{
    {
        FileInputStream fis = new FileInputStream(new File("C:\\Users\\amiku\\eclipse-workspace\\Amiku\\cloudstreams-connectors-downloads.xlsx"));

        //create workInstance that refers to .xlsx file
        XSSFWorkbook wb = new XSSFWorkbook(fis);

        //create a sheet  object to retrive the sheet 
        XSSFSheet sheet = wb.getSheetAt(0);

        //that is for evalute the cell type
        FormulaEvaluator formulaEvaluator = wb.getCreationHelper().createFormulaEvaluator();
        Map<String, Integer> Details = new HashMap<String,Integer>();
        int i=0;
        List<String> l = new ArrayList<String>();
        for (Row row : sheet)
        {
            for (Cell cell : row) {
                l.add(cell.getStringCellValue());
                /*HashMap map = new HashMap();
                map.put(cell.getStringCellValue());*/

            }
                /*switch(formulaEvaluator.evaluateInCell(cell).getCellType())
                {*/
                /*//if cell has a numeric  format
                case Cell.CELL_TYPE_NUMERIC:
                    System.out.print(cell.getNumericCellValue() + "\t\t");
                    break;

                // if cell has a string format
                case Cell.CELL_TYPE_STRING:
                    System.out.print(cell.getStringCellValue() + "\t\t");
                    break;
                }*/


            i++;
            System.out.println();
        }
        for (int j = 0; j < l.size(); j++) {
            if (j % 2 == 1) {

                  String var = l.get(j);

                  if (Details.containsKey(var)) {
                      Details.put(var, Details.get(var) + 1);
                  } else {
                      Details.put(var, 1);
                  }

            }

       }
       Iterator it = Details.entrySet().iterator();
       while (it.hasNext()) {
            Map.Entry pair = (Map.Entry) it.next();
            System.out.println(pair.getKey() + " = " + pair.getValue());
            it.remove(); // avoids a ConcurrentModificationException
       }

    }
    }
}

我的这段代码的结果图像在这里。

图片

您可以创建一个可扩展对象,并将键值对添加到该对象,一旦将所有javacode输出设置为该对象,

只需使用其中一个专用库将该对象序列化为json即可。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM