【问题标题】:How to Parse .java files into JSON format如何将 .java 文件解析为 JSON 格式
【发布时间】:2017-05-09 18:56:42
【问题描述】:

有没有办法将 .java 文件解析成 JSON 格式?

假设我们有一个包含不同功能的类,例如:

public static int getMax(int[] inputArray){ 
    int maxValue = inputArray[0]; 
    for(int i=1;i < inputArray.length;i++){ 
      if(inputArray[i] > maxValue){ 
         maxValue = inputArray[i]; 
      } 
    } 
    return maxValue; 
  }

我想解析它,以便在 JSON 文件中存储有关此功能的信息,例如它的名称、类型、输入等。

这怎么可能?有没有什么程序或框架可以做到这一点?

例如,这是我希望 JSON 包含的内容:

{
   "function": [

      {
         "name":"getMax",
         "language": "Java",
         "type": "public static int",
         "other_info": "whatever"
      },

      {
         "name":"getMin",
         "language": "Java",
         "type": "public static int",
         "other_info": "whatever"
      }

   ]
} 

非常感谢任何信息!

【问题讨论】:

  • 是的,这是可能的。 AFAIK没有人做过。这是个好主意吗?不,海事组织。您最好使用普通的 Java 解析器,构建内存中的解析树并直接使用它,或者从选定的信息中填充数据库。
  • @StephenC 听起来不错,有什么好的 java 解析器可以用吗?
  • 我确定有。但是,寻求建议是题外话。即使在 cmets 中。
  • @SaurabhJhunjhunwala - 这是在解决一个完全不同的问题。

标签: java json parsing


【解决方案1】:

您可以使用 Gson(Google 的 Json Java API)将类转换为 Json:

String json =gson.toJson(classToJson);
classname jsonToClass = gson.fromJson(jsonString, classname.class);

但是你为什么要用方法来做呢?我很好奇。

【讨论】:

  • 此示例代码将类的 实例 与 JSON 相互转换。问题是关于将 Java 源代码 转换为 JSON。 (或者,更准确地说,从 Java 源代码中解析和提取详细信息,并将它们作为 JSON 发出。)
猜你喜欢
  • 1970-01-01
  • 2018-05-17
  • 2018-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多