最近的一个程序中需要用到如下的操作:问题一:
如何在程序中动态指定了数据类型后,生成相应的记录文件和记录文件类型?
比如我在某个编辑框中指明了记录的字段ID(整型),Name(字符型)。然后按某个按钮去生成这种类型的记录、记录文件类型、记录文件。难题在于:我觉得记录文件类型和它的字段都是在程序的最前面声明的。如何在程序执行过程中动态的实现这个效果呢?问题二:
如何判断记录文件的类型?即:一个不清楚它包含纪录类型的记录文件(当然文件后缀可以一样),如何打开?(这个问题和上面的问题有点类似)请各位多多指点,分不够再加。多谢!
如何在程序中动态指定了数据类型后,生成相应的记录文件和记录文件类型?
比如我在某个编辑框中指明了记录的字段ID(整型),Name(字符型)。然后按某个按钮去生成这种类型的记录、记录文件类型、记录文件。难题在于:我觉得记录文件类型和它的字段都是在程序的最前面声明的。如何在程序执行过程中动态的实现这个效果呢?问题二:
如何判断记录文件的类型?即:一个不清楚它包含纪录类型的记录文件(当然文件后缀可以一样),如何打开?(这个问题和上面的问题有点类似)请各位多多指点,分不够再加。多谢!
解决方案 »
- Button = mbLeft 是什么意思?
- Undeclared identifier: 'CB_GETTEXTLEN'
- DELPHI问题,急~~~~~~~~~~~~~~
- 关于精度问题?
- 用DELPHI如何把图片存在EXCEL文件中?
- 怎样使pagecontrol实现以下功能?
- delphi如何实现 【新浪微博 登陆 和 关注他人】
- 请问如何在点击dbgrid的某一title时,排序该列的数据?
- 如何将程序的每天操作写入到一个日志文件里
- 一般的数据库一行显示的内容,像姓名,性别等,有好几列,如果我只设两列,那么我如何做
- 超难度查询操作,请问该如何写SQL语句呀? 高手请进!
- picturebox控件的line方法畫線,很簡單
2.不清楚啊..
我也是觉得……如果用做dll的方法可以,但是只是这么想,实际操作不清楚……
记录文件和记录文件类型
是不是指数据表的字段名和字段类型,
请楼主说清楚一些! 不是,记录文件是指Delphi可以操作的3种文件之一:文本/纪录/无类型文件。
记录文件由长度固定的若干条记录组成,可以很方便的对他们进行操作。
每条记录又可以包括若干个属性。比如id=1 ,name ='lee',sex='male'等。
你的大体意思我明白了,是不是不管你怎么自定义里面谁处于有用态,这个文件类型是始终不变的。所以我们
可以所有自定义格式的文件,并且判断里面那些有用?
但是还有如下问题不清楚:
1.什么是绝对互斥的共用结构?
2.如何动态分配内存?我只知道记录文件声明时要指明它的类型,string类型要指明它的宽度。但是如何在程序中动态分配呢?也就是说,刚才的方法解决了如何动态制定每条记录中的字段的问题,但字段类型动态获取我不太清楚,请详谈,谢谢。
动态分配内存?实在不行你就做成类,用create动态创建需要的数据,
结构中的字段自动是引用类型
T_person = Record d_frist_name:string;
d_last_name:string;
birth_date:TDate; case d_is_Manager:Boolean of
false:d_annual_salary:double;
true:(
d_country:string;
d_entry_date:TDate;
d_Hourly_salay:double
);
end;
T_person = Record d_frist_name:string;
d_last_name:string;
d_birth_date:TDate; case d_is_Manager:Boolean of
false:(d_annual_salary:double);
true:(
d_country:string;
d_entry_date:TDate;
d_Hourly_salay:double
);
end;
1.你有没有试过这样分配,而且定义出这种纪录的文件类型来?
2.程序中能够动态指定出d_is_Manager并分配么?
就是说你实际是否这么做过动态分配?原谅我问的罗索,我曾经打算用variant,觉得一准行,十拿九稳。但后来发现variant不支持纪录。
你可以在集成环境里试一下,看T_person对象后面的点后面会不会出现这个 d_is_manager
也不能怪我啊……我才学delphi俩月…… :(