2016-08-11 116 views
0

我是新创建jsons并拥有java的bais知识。 我想将数据库表数据转换为json。将excel转换为json文件

选择以任何格式的文件存储表数据,而不是将其转换为json。

这是我的表格数据。

表:PKGS

Price, pd,   Id,     Level 
    1 , 266  , 59098  ,   5 
    2 , 247  , 59098  ,   5 

我想在这个JSON格式我的表中的数据。它只是一个例子...在JSON中显示级别

"Id":59098 
      "pd":266 
        "Level":5 
        "price":1 
"Id":59098 
      "pd":247 
        "Level":5 
        "price":2           

在此json中有两个循环正在进行如果没有错误。我能够做ETL中的一个循环..但不能做两个循环。

没有得到值reimbursementId和包标识

有很多的瞪大眼睛,但找不到任何代码正确理解和做法的一样。

代码试图点点

FileInputStream inp = new FileInputStream("D:/json.xlsx"); 
Workbook workbook = WorkbookFactory.create(inp); 

Sheet sheet = workbook.getSheetAt(0); 

    JSONObject json = new JSONObject(); 

    JSONArray rows = new JSONArray(); 

,但不知道下一步该怎么办!

谁能告诉我该怎么做?

+0

@KevinJantzer,请检查该编辑后的 – Kate

+1

可能的复制[EXCEL到JSON的javascript代码?](http://stackoverflow.com/questions/28782074/excel-to-json-javascript-代码) –

+3

为什么JavaScript标签? –

回答

0

我建议你使用特定的工具。这不是一个全新的案例。

尝试Talend Open Studio。如果要将文件(CSV,JSON,数据库直接等)转换为另一个文件,则使用起来并不复杂。基础知识请参见TalendForge

就你而言,你可以连接到你的数据库,并以JSON发送所有数据。

编辑:

您的表示法不是遵循与JSON相同的逻辑。在这里,我怎么看它(这可能是错误的,因为我无法理解)

如果你只是希望Excel JSON没有任何变化:

{ 
    "rows":[ 
     { 
      "Price":"1", 
      "pd":"266", 
      "Id":"59098", 
      "Level":"5" 
     }, 
     { 
      "Price":"1", 
      "pd":"266", 
      "Id":"59098", 
      "Level":"5" 
     }, 
     //and again and again 
     { 
      "Price":"2", 
      "pd":"247", 
      "Id":"59098", 
      "Level":"5" 
     } 
    ] 
} 

如果您要重新组织,然后定义你想。尝试使用ArrayList,int,String和subclass在Java对象中想象您的数据样本,或者在JavaScript对象中使用更好的样式。

对于最后一个例子,它会给你:

public class myJson{ 
    ArrayList<myObject> rows; 

public class myObject{ 
    String Price; 
    String pd; 
    String Id; 
    String Level; //Or int, or date, or whatever 

如果您要重新组织你的数据模型,请给我们这种模式。

+0

我试过talend以及..但它只支持json的一个级别。我的要求是针对两个级别的json – Kate

+0

您可以根据您提供的示例提供您想要生成的JSON示例吗?只是为了确保可行性,但对于更多读者来说也更简单。 您可以在Talend中生成多级JSON,但这更复杂,因为Talend中的数据流是一个级别。 –

+1

@Clement ...发布更新...请检查 – Kate

0

将Excel文件数据转换为Json格式是一个有点复杂的过程,它取决于数据的结构,至今我们还没有确切的在线工具。

自定义代码是必需的,有各种可用的技术,但最适合的应该是VBA,因为VBA适合Excel,并且可以快速灵活地生成Json文件以编辑代码,与任何需要自动化的其他技术相比擅长并导入数据然后处理。

我们可以找到有各种网站提供的代码来从excel数据生成json,这里是一个这样的网站看起来在这方面的专业知识。 http://www.xlvba.net/tools/excel-automation-to-convert-excel-data-to-json-format.html

Ragavendra