hur.cn - 华软网

 热门搜索

PB中 文件名使用变量,为何不行

  作者:未知    来源:网络    更新时间:2019/6/11
这样写,为什么找不到资料,但资料肯定存留

datetime ldt_datetime
string strfile
integer li_FileNum
long ll_flen
//取服务器时间
///////////////////////////////////////////////// 
 SELECT getdate()  
 INTO: ldt_datetime   
 FROM sysusers  
 WHERE sysusers.name ="dbo"   
           ;
////////////////////////////////////////////////////

strFile = g_strPicturePath + STRING(ldt_datetime, 'yyyymmdd-HHmmss') + '.jpg'

ll_flen=FileLength(strFile)//'e:\20070208-142548.jpg')  

if ll_flen < 0 then 
Messagebox("毛病信息", "图资料不存留!", Exclamation!) 
return 
end if 

如果将
 ll_flen=FileLength(strFile)//'e:\20070208-142548.jpg') 
直接改成
 ll_flen=FileLength('e:\20070208-142548.jpg') 

 strfile='e:\20070208-142548.jpg'
 ll_flen=FileLength(strfile) 
都能够

调试能够看到变量strfile的值就是'e:\20070208-142548.jpg'
请高手指教


------华软网友回答------
看不出什么毛病,试试FileExists()
------华软网友回复------
g_strPicturePath可能有问题。
------华软网友回复------
to:kkbgp(kkb),运用FileExists(strfile)前往值为TRUE,说明资料是存留的;
to:mysqlserver,"g_strPicturePath"这是全局变量,初始定义为:"e:\";
是否是不允许变量通过变量赋值呢,真头疼。还希望列位大虾指教。

------华软网友回复------
调试到FileLength是有效的吗?要不把单引号改成双引号试试。
------华软网友回复------
有效,运用Fileexists()表示资料存留,说明有效
------华软网友回复------
改造一下这个Sql语句:
SELECT Top 1 getdate()
INTO: ldt_datetime
FROM sysusers
Using Sqlca;
//WHERE sysusers.name ="dbo" 

由于可能sysusers.name ="dbo" 的记录数是多条。所以掏出来的时间不对,或为Null,
建议断点观察,Select出来的结果。
------华软网友回复------
谢谢列位的支持,已经搞定。原因是资料打开设置问题。
li_FileNum=FileOpen(strFile,StreamMode!,Read!,Shared!) ,运用共享方式打开就能够了;我原来运用的是只有打开资料的人能够查看。      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。