2

私は多くのことを試しましたが、うまくいきませんでした。

Qt 5.9.1 を使用していますが、次のように QFile 変数で .txt ファイル (qrc ファイル内) を開きたいと思います。

QFile file(":/txt/config");

私も使ってみました

QFile file("qrc:/txt/config"); 

これがqrcファイルです(要約):

<qresource prefix="/txt">
    <file alias="config">resources/files/config.txt</file>
</qresource>

私の.proにはありますINCLUDEPATH += .

私はすでにしようとしました:

Build -> Clean all
Build -> Run qmake
Build -> Build all

そして、それは何も変更しませんでした.起動するたびに、私はこの出力を持っています:

QIODevice::read (QFile, ":/txt/config"): device not open

.qrc のパスは正しいです。QtCreator は、ディレクトリを参照してファイルを見つけ、通常のテキスト ファイルのようにエディターで開きます。

助けてくれてありがとう、そして私の英語でごめんなさい...(編集機能では、こんにちはみんなを一番上に追加することはできないので、ここで言います:))

4

1 に答える 1

5

コンテンツはアプリケーション バイナリに埋め込まれているため、書き込み用にリソース ファイルを開くことはできません。読み取り専用で開く必要があります:

QFile file(":/txt/config");
if(!file.open(QIODevice::ReadOnly)) {
    qDebug() << "error: " << file.errorString();
}
于 2017-09-23T22:17:15.870 に答える