QML:如何获取文件baseName
Posted
技术标签:
【中文标题】QML:如何获取文件baseName【英文标题】:QML: how to get file baseName 【发布时间】:2015-10-04 14:55:18 【问题描述】:如何从完整的文件 URL 中提取文件 baseName?
FileDialog
id: fileDialog
title: "Oooopen"
onAccepted:
console.log(fileUrl)
fileUrl
没有baseName
之类的属性 我尝试谷歌搜索,但没有成功
【问题讨论】:
您可以使用 QFileInfo 的功能从 C++ 向 QML 公开自定义类,因为它不是从 QObject 派生的,并且不能直接向 QML 公开。或者只使用正则表达式,例如fileUrl.toString().replace(/\\/g,'/').replace(/.*\//, '')
Get the path from a QML url的可能重复
【参考方案1】:
您可以定义自己的basename
函数
function basename(str)
return (str.slice(str.lastIndexOf("/")+1))
FileDialog
id: fileDialog
title: "Oooopen"
onAccepted:
console.log(basename(fileUrl.toString()))
【讨论】:
在 Qt 5.10 中(也可能是早期版本)这个函数看起来像:return (String(str).slice(String(str).lastIndexOf("/")+1))
以上是关于QML:如何获取文件baseName的主要内容,如果未能解决你的问题,请参考以下文章