如何得到相对目录信息,比如:C:\MySql\qq\ww\zz\xx\123.txt...... 全路径已得到.比如,已得C:\MySql\qq\ww\zz\xx\123.txt 现想得:相对ww的路径: zz\xx\123.txt 如何? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果已知ww的全路径为SPath,AnsiString P = ExtractFilePath("123.txt");int L = P.Length();int M = SPath.Length();AnsiString RelativePath = P.SubString(M+1, L-M); 函数 说明 ExpandFileName() 返回文件的全路径(含驱动器、路径) ExtractFileExt() 从文件名中抽取扩展名 ExtractFileName() 从文件名中抽取不含路径的文件名 ExtractFilePath() 从文件名中抽取路径名 ExtractFileDir() 从文件名中抽取目录名 ExtractFileDrive() 从文件名中抽取驱动器名 ChangeFileExt() 改变文件的扩展名 ExpandUNCFileName() 返回含有网络驱动器的文件全路径 ExtractRelativePath() 从文件名中抽取相对路径信息 ExtractShortPathName() 把文件名转化为DOS的8·3格式 MatchesMask() 检查文件是否与指定的文件名格式匹配 to Dala:不行呀!,帮忙再看看.这是我的代码还有你的void __fastcall TForm1::Button2Click(TObject *Sender){ AnsiString filename;if(OpenDialog1->Execute()){ filename = OpenDialog1->FileName; Edit1->Text=filename;AnsiString P = ExtractFilePath(filename);int L = P.Length();int M = Edit1->Text.Length();AnsiString RelativePath = P.SubString(M+1, L-M); Edit2->Text=RelativePath;}; }得不到结果。 to wjzhuang(困惑中的程序猪) 请教ExtractRelativePath例子!!谢谢 原型:extern PACKAGE AnsiString __fastcall ExtractRelativePath(const AnsiString BaseName, const AnsiString DestName); 功能:从文件名中抽取相对路径信息,如"..\sss\ss.asd"这种形式 参数:BaseName:基准文件名;DestName:目标文件名 例:ShowMessage(ExtractRelativePath("D:\\Source\\c\\1.123","D:\\Source\\Asm\\dz.asm"));/*显示"..\asm\dz.asm"*/ 多谢!还有一个问题,就是我还需要知道一个文件所在文件夹名,不是全路径如:C:\MySql\qq\ww\zz\xx\123.txt我只想得到: xx ExtractFileDir() 从文件名中抽取目录名 ExtractFileDir() 从文件名中抽取目录名 ExtractFileDir() 抽取得全目录路径,不是文件所在目录 xx就是我还需要知道一个文件所在文件夹名,不是全路径如:C:\MySql\qq\ww\zz\xx\123.txt我只想得到: xx 先取得C:\MySql\qq\ww\zz\xx\123.txt在得到C:\MySql\qq\ww\zz\xx然后从后向前找到第一个"\",其后的字符当然是你要的了.至于前两布的实现上面的仁兄们讲得很清楚了. 如何快速地随机取记录? 十万火急,有关从二进制日志中恢复SQL的问题 为什么这个 随机抽取记录的 SQL 不工作? 同一大类不同小类的数据存放的问题 求一条分类统计最新一条记录的SQL语句 MySQL如何实现这个CHECK语句 如何通过一定的条件,将A表的数据写入B表 mysqldump导出的数据恢复问题 PostgreSQL性能问题 请问可不可以用javascript访问mysql数据库??? 求救了!请高手指点!Warning: Can't connect to MySQL server on 'localhost' (10013) 怎样把用户选择的图像文件存入mysql呢
AnsiString P = ExtractFilePath("123.txt");
int L = P.Length();
int M = SPath.Length();
AnsiString RelativePath = P.SubString(M+1, L-M);
ExpandFileName() 返回文件的全路径(含驱动器、路径)
ExtractFileExt() 从文件名中抽取扩展名
ExtractFileName() 从文件名中抽取不含路径的文件名
ExtractFilePath() 从文件名中抽取路径名
ExtractFileDir() 从文件名中抽取目录名
ExtractFileDrive() 从文件名中抽取驱动器名
ChangeFileExt() 改变文件的扩展名
ExpandUNCFileName() 返回含有网络驱动器的文件全路径
ExtractRelativePath() 从文件名中抽取相对路径信息
ExtractShortPathName() 把文件名转化为DOS的8·3格式
MatchesMask() 检查文件是否与指定的文件名格式匹配
这是我的代码还有你的
void __fastcall TForm1::Button2Click(TObject *Sender)
{ AnsiString filename;
if(OpenDialog1->Execute()){ filename = OpenDialog1->FileName;
Edit1->Text=filename;
AnsiString P = ExtractFilePath(filename);
int L = P.Length();
int M = Edit1->Text.Length();
AnsiString RelativePath = P.SubString(M+1, L-M);
Edit2->Text=RelativePath;
};
}得不到结果。
请教ExtractRelativePath例子!!谢谢
如:C:\MySql\qq\ww\zz\xx\123.txt
我只想得到: xx
如:C:\MySql\qq\ww\zz\xx\123.txt
我只想得到: xx
在得到C:\MySql\qq\ww\zz\xx然后从后向前找到第一个"\",其后的字符当然是你要的了.至于前两布的实现上面的仁兄们
讲得很清楚了.