是否可以使用IronPython将当前* .dxp项目的路径作为字符串返回?

时间:2015-05-06 15:44:18

标签: python ironpython spotfire

这应该(我认为)有一个简单的答案,假设答案存在。

是否可以使用IronPython将当前* .dxp项目的路径作为字符串返回?我经常在VBA中使用类似的东西,它变得非常有用。

我试过看,但我很难通过TIBCO的Python材料。 :\

1 个答案:

答案 0 :(得分:2)

下面的脚本可以帮助您解决此问题。根据您使用的是库文件还是.dxp,有两种方法可以获取分析路径。你的具体问题是针对.dxp的,但是为了传递知识,我想我会提到它。

Application命名空间中的DocumentMetaData类是此处需要的关键项。下面的脚本试图从基于库的属性获取路径。如果等于"无" (又名不是来自图书馆)然后我们尝试文件路径。除此之外,我做了一些子串逻辑,以获得分析的确切名称作为完整路径的切片(子串)。

from Spotfire.Dxp.Application import DocumentMetadata
dmd = Application.DocumentMetadata #Get MetaData
path = str(dmd.LoadedFromLibraryPath) #Get Path
if path == "None": #If this isn't a library file get the local file path
    path = str(dmd.LoadedFromFileName)
    sub = path.rfind("\\") + 1 #Find "\" from the right and grab the position of the character past it
else:
    sub = path.rfind("/") + 1 #Find "/" from the right and grab the position of the character past it
length = len(path) #get length of path
analysis = path[sub:length] #The specific analysis is the slice of the path after the farthest right '/' character.

print path #for testing
print analysis #for testing

印刷品的输出示例:
C:\用户\ CLESIEMO3 \桌面\ super_neat_file.dxp
super_neat_file.dxp