如何动态定义变量 可以使用arraylist的集合,因为里面的内容是object的。你可以放里面任何东西。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 关于反射,参考:http://www.aspcool.com/lanmu/browse1.asp?ID=1160&bbsuser=csharp 动态定义变量:string MyValue="6.325478"; //此数据可以从你的配置文件中得到string MyType="System.Double"; //此数据可以从你的配置文件中得到,注意大小写要正确object value=Convert.ChangeType(MyValue,Type.GetType(MyType)); TO: qpl007(蓝色闪电) ,人家要的是名称而不是值! 变量名称动态生成不可能,除非在for循环里控制变量名规律地生成。如果你的配置文件里存放了类名,类所在的dll信息,完全可以在程序里读取出来,然后用反射生成对象! 变量名为什么不能动态生成,因为系统在编译的时候,要记录下每个变量,当new的时候,再在堆上开辟存储空间(如果是值类型就直接存在栈上)。如果连变量名都没有,系统如何记录变量呢!!! 可以 定义一个enum 类型 来存放所有 IC card 可能被读取的项目用switch(){ case "A" : // .... case "B" : // .... case "C" : // .... case "D" : // ....//.....}//还不很明白你应用的具体情况 ,你可以把具体要解决的问题说详细一点,最好还有个demo private String[][] getItems(){//模拟从配置文件获取的信息String[,] strItems=new String[,]{{"sg","float"},{"tz","float"},{"wl","float"},{"fhl","int"}};return strItmes;}String[,] strItems=getItems();//比如根据这个数组,我就想实现 float sg; float tz; float wl; int fhl;....// 这是不行的,就是我上面说的原因:因为系统在编译的时候,要记录下每个变量,当new的时候,再在堆上开辟存储空间(如果是值类型就直接存在栈上)。如果连变量名都没有,系统如何记录变量呢!!! C#中刚进入for循环,不知为何立即就跳出去了,在线等各位回复 生成操作对应的选项都有什么作用 子窗口关闭时 怎么调用父窗口里面的刷新事件? BLL返回ILIST,Item_Created里获取对象报错,求助 关于byte[]有效数组长度的问题 求助在WinForm下,把DataGrid中的数据导入到Excel2003中的代码? [求助].net注册IIS命令 C# 开发模式问题 关于exce导入到数据集中的问题! 关于TableMappings的问题,在线等 不小心删除东西了,“剪贴板循环” 急!做好windows service后怎么添加到系统服务中?
http://www.aspcool.com/lanmu/browse1.asp?ID=1160&bbsuser=csharp
string MyType="System.Double"; //此数据可以从你的配置文件中得到,注意大小写要正确object value=Convert.ChangeType(MyValue,Type.GetType(MyType));
{
case "A" : // ....
case "B" : // ....
case "C" : // ....
case "D" : // ....
//.....
}//还不很明白你应用的具体情况 ,你可以把具体要解决的问题说详细一点,最好还有个demo
{
//模拟从配置文件获取的信息
String[,] strItems=new String[,]{{"sg","float"},{"tz","float"},{"wl","float"},{"fhl","int"}};
return strItmes;
}
String[,] strItems=getItems();
//比如根据这个数组,我就想实现 float sg; float tz; float wl; int fhl;....
//
因为系统在编译的时候,要记录下每个变量,当new的时候,再在堆上开辟存储空间(如果是值类型就直接存在栈上)。如果连变量名都没有,系统如何记录变量呢!!!