我正在分析将现有的C#库转换为java。首先,我需要知道现有C#库中使用的类型/内置关键字是什么。我的意思是,例如
public class CSharpClass
{
int i;
float j;
Console.Writeline(String.Concat("A","B"));
}
在此课程中,使用的类型/关键字是
我的问题是,
答案 0 :(得分:3)
你也需要语义 - 语法就是你看到的文本,而这正是你得到的,仅此而已。为您的项目获取Compilation
,然后您可以拨打GetSemanticModel
给树,然后在那里拨打GetTypeInfo
或GetSymbolInfo
(视情况而定,搜索在线获取这两者之间的差异)获取类型信息。
至于获取Compilation
,如果您正在编写命令行工具,则可能需要使用MSBuildWorkspace
来加载项目。如果您正在分析在Visual Studio中打开的项目,请使用VisualStudioWorkspace
等