2016-04-24 15 views
1

QfileにはfileName = "d://f1/f2/img.jpg"があります。私は、ファイルのアドレスたい。?( "D:// F1/F2)を、私はそれを得ることができますどのようQSTRINGの内容を分離し、以下のようにラベルを付けQfileInfoQFileのファイル名を持たないファイルアドレスを取得します。

+3

はのQFileInfoを作成し、それはそれはのためだものです。なぜあなたはそれを使いたくないのですか? –

答えて

1

チェックこのリンク:

http://doc.qt.io/qt-4.8/qfileinfo.html#absolutePath

ファイルパス:

QFileInfo fi("c:/temp/foo"); => fi.absoluteFilePath() => "C:/temp/foo" 

は、ベースファイル名: `のQFileInfo(ファイル).absolutePath()`:

QFileInfo fi("/tmp/archive.tar.gz"); 
QString base = fi.baseName(); // base = "archive" 
0
QString folder=file.fileName().section("/",0,-2); 

.section関数に変換せず:

_______________________________ 
| d: |/| /f1 | /f2 | /img.jpg | 
------------------------------- 
| 0 | 1 | 2 | 3 | 4  | 
------------------------------- 
| -5 |-4 | -3 | -2 | -1  | 
------------------------------- 

そうセクション( "/"、0、-2)を返します:D:// F1/F2

+2

この構文は 'QFileInfo'を使用するよりも鈍っており、効率的ではありません。あなたは 'QFileInfo'がある種の重いファイル変換をしていると思うようですが、それは当てはまりません。 –

関連する問題