求这样一个函数:函数("C:\winnt\a.bak")="C:\winnt\"

juit 2003-08-21 10:09:46
如题!
...全文
24 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
juit 2003-08-29
  • 打赏
  • 举报
回复
大家辛苦了.
flyingscv 2003-08-21
  • 打赏
  • 举报
回复
WIN API :GetFullPathName不如下面的好

回复人: eports(飘零风) ( ) 信誉:100 2003-08-21 10:42:00 得分:0


TmpStr="C:\winnt\a.bak"
MsgBox Left(TmpStr,InStrRev(TmpStr,"\"))

InStrRev函数:返回一个字符串在另一个字符串中出现的位置,从字符串的末尾算起。




test7979 2003-08-21
  • 打赏
  • 举报
回复
再好也没有MS的好,

请看WIN API
GetFullPathName
hxy2003 2003-08-21
  • 打赏
  • 举报
回复
这些代码都很好.
jsshfj 2003-08-21
  • 打赏
  • 举报
回复
你可以考虑使用这个GetParentFolderName

或者
Private Function GetParentFolder(path As String) As String
GetParentFolder = Left(path, InStrRev(path, "\"))
End Function

或者
Private Function GetParentFolder(path As String) As String
Dim itemp As Integer
Dim vartemp
Dim varGroup
varGroup = Split(path, "\")
itemp = -1
For Each vartemp In varGroup
itemp = itemp + 1
Next
GetParentFolder = ""
For i = 0 To itemp - 1
GetParentFolder = GetParentFolder + varGroup(i) + "\"
Next i
End Function
onlineboy 2003-08-21
  • 打赏
  • 举报
回复
楼上的这些不能解决多级子目录的问题
加个循环就可以了

Function GetFilePath(ByVal FileName As String) As String
dim intA as Long
intA = InStr(1, FileName, "\")
Do Until intA = 0
intA = InStr(intA + 1, FileName, "\")
Loop
GetFilePath = Left(FileName, intA)
End Function
Sean918 2003-08-21
  • 打赏
  • 举报
回复
TmpStr="C:\winnt\a.bak"
MsgBox Left(TmpStr,InStr(TmpStr,"\"))
zhenglc 2003-08-21
  • 打赏
  • 举报
回复
楼主是要获得路径名吧
Random 2003-08-21
  • 打赏
  • 举报
回复
function GetPathByName(byval filename as string) as string
GetPathByName=left(filename,len(filename)-instr(strreverse(filename),"\")+1)
end function
飘零风 2003-08-21
  • 打赏
  • 举报
回复
TmpStr="C:\winnt\a.bak"
MsgBox Left(TmpStr,InStrRev(TmpStr,"\"))

InStrRev函数:返回一个字符串在另一个字符串中出现的位置,从字符串的末尾算起。

itsmyfault 2003-08-21
  • 打赏
  • 举报
回复
left("C:\winnt\a.bak",9)
liul17 2003-08-21
  • 打赏
  • 举报
回复
没明白什么意思说具体些!
wzhjs 2003-08-21
  • 打赏
  • 举报
回复
Function GetPath(fullpath)
Dim p
For p=Len(fullpath) To 1 Step -1
If Mid(fullpath,p,1)="\" Then Exit For
Next
if p=1 Then
GetPath=""
Else
GetPath=Mid(fullpath,1,p-1)
End if
End Function
test7979 2003-08-21
  • 打赏
  • 举报
回复
是吗?

那如果路径是这样的呢 C:/winnt/a.bak

这个可也是Windows支持的路径名称

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧