way 发表于 2007-6-12 15:04:50

数据驱动时读取的字段与字符串比较问题

环境:WR8.0+WINDOWS2000+EXCEL2003
问题:读取EXCEL文件中的字段时只取第一行的字段,而且使用==进行比较时为不等,我不知道是什么问题,大家帮忙看下,谢谢!
         还有请问下compare_text (ddt_val(table,"password1"),"mercury")==1这语句中compare_text 的用法==1时为什么意思?

代码:
table = "e:\\hwn\\wrtest\\login\\default.xls";
rc = ddt_open(table, DDT_MODE_READ);
if (rc!= E_OK && rc != E_FILE_OPEN)
        pause("Cannot open table.");
ddt_get_row_count(table,table_RowCount);
for(table_Row = 1; table_Row <= table_RowCount; table_Row ++)
{
printf(ddt_val(table,"Password1"));
#if(compare_text (ddt_val(table,"password1"),"mercury")==1)
if(ddt_val(table,"password1")=="mercury")
printf("==");
else
printf("!=");

}
ddt_close(table);

EXCEL文件中的内容:

[ 本帖最后由 way 于 2007-6-13 13:26 编辑 ]

way 发表于 2007-6-13 08:49:56

都没人回答sdlkfj9 ,是我表达不清楚吗?

way 发表于 2007-6-13 13:25:43

是不是我问的问题太低级了?都没人回答sdlkfj1
问题大致已解决:只取EXCEL第一行是因为FOR语句中忘了加ddt_set_row(table,table_Row);
if(ddt_val(table,"password1")=="mercury")这个仍有问题(password1为mercury时为不等,但取EXCLE表中的另一个字段name进行比较就可以了,注手动改过EXCEL表里第一行的字段名,以后再搞清楚).
重新生了长EXCEL表if(ddt_val(table,"password1")=="mercury")该问题就解决了

dionysus 发表于 2007-6-13 22:10:28

这几天有点忙,不能一一回复问题,不好意思
不过lz自己找到问题的所在一定也学到了更多sdlkfj3   希望其他的高手也多多回复
页: [1]
查看完整版本: 数据驱动时读取的字段与字符串比较问题