【发布时间】:2022-08-13 23:02:41
【问题描述】:
我正在用java实现一个代码生成器,它将创建一个C#代码。 当我需要使用 Console.ReadLine() 时,变量有一个类型,但在生成代码时我不知道类型。
那么,是否可以仅使用变量从 Console.ReadLine() 转换类型?
代码示例:
public static void main()
{
var a = 1;
var b = 2;
/* The variable \'a\' has a value and is of type integer,
* but when I generate this code I don\'t have this information */
a = Console.ReadLine();
/*I\'ve tried to get type of variable but I didn\'t get success */
var type = a.GetType();
a = type.Parse(Console.ReadLine());
}
-
Convert.ChangeType(Console.ReadLine(), type);docs.microsoft.com/en-us/dotnet/api/… |注意:方法的返回类型是对象,如果对象不够好,需要将其转换为所需的类型 -
@RandRandom 我已经尝试过这个技巧但没有成功:(
-
需要更多信息来进一步帮助您。
-
将其作为字符串读取。然后使用
int.TryParse查看是否为int。失败,尝试double.TryParse,失败,检查它是true还是false,然后检查它是否是单个字符。这将告诉您类型(并且,对于TryParse调用,给您值)。一个你有类型,做一个正常的解析或转换
标签: c# types code-generation codegen