file.txt in qrc , can not open

Verschiedenes zu Qt
Antworten
Igell
Beiträge: 27
Registriert: 11. November 2009 20:36

file.txt in qrc , can not open

Beitrag von Igell »

Ich habe mir benutze die Datei index.txt als meine kleine Daten Bank, deshalb wollte ich sie in ein qrc Datei einbinden.

qrc File:

Code: Alles auswählen

<RCC>
    <qresource prefix="/new/prefix1">
        <file>file/icon1.png</file>//für einen Button // was auch funktioniert 
        <file>file/index.txt</file>
    </qresource>
</RCC>
Das ganze überprüfe ich mit einem eigendem Slot :

Code: Alles auswählen

void Erika::index_open1()//SLOT
{
    QString fn = ":/new/prefix1/file/index.txt";
    QFile index(fn);
    index.open(QIODevice::ReadWrite);
    //püft ob datei offen ist //reade/wirte
    if(index.isOpen())
    {
        QMessageBox::information(this,"Erfolg","Die Datei ist offen",QMessageBox::Close);

    }
    else
    {
        QMessageBox::information(this,"Fail","Die Datei ist Geschlossen",QMessageBox::Close);

    }

}
Leider lässt sich die Datei nicht öffnen.

Jemand eine Idee ?
Wissen ist die einzige Ressource, die sich vermehrt wenn man sie teilt
24dan
Beiträge: 274
Registriert: 26. Juni 2006 14:15
Wohnort: Hamburg

Beitrag von 24dan »

versuch mal

Code: Alles auswählen

<RCC>
    <qresource prefix="/newPrefix">
        <file>icons/adler_32.png</file>
stuff..
        <file>icons/vorschau_128.png</file>
        <file>icons/zahlengruppen_48.png</file>
    </qresource>
<qresource prefix="/">
        <file>meldungen.txt</file>
    </qresource>
</RCC>
Habe meldungen.txt extra eingebunden und es würggt schon :wink:
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
Igell
Beiträge: 27
Registriert: 11. November 2009 20:36

Beitrag von Igell »

Es will einfach nicht.

Code: Alles auswählen

<RCC>
    <qresource prefix="/">
        <file>text.txt</file>
    </qresource>
</RCC>
//mywidget.cpp

Code: Alles auswählen

#include "mywidget.h"
#include <QBoxLayout>
#include <QFile>
#include <QMessageBox>
#include <qrc_image.cpp>

MyWidget::MyWidget(QWidget *parent) : QWidget(parent)
{
    QVBoxLayout *vLay1 = new QVBoxLayout(this);
                 but1  = new QPushButton("Button1");
                 lab1  = new QLabel("TextTextText");
                 index = new QFile(":/text.txt");


    //vLay1 edit
    vLay1->addWidget(lab1);
    vLay1->addWidget(but1);

    //this
    this->setMinimumSize(250,260);

    //siganl _ SLOT
    this->connect(but1,SIGNAL(clicked()),this,SLOT(open1()));
}

MyWidget::~MyWidget()
{

}

void MyWidget::open1()
{

    index->open(QIODevice::WriteOnly);

    if(this->index->isOpen())
    {
        QMessageBox::information(this,"Erfolg","File is Open",QMessageBox::Ok);

    }
    else
    {
        QMessageBox::information(this,"Fail","File is not Open",QMessageBox::Ok);
    }


}
//mywidget.h:

Code: Alles auswählen

#ifndef MYWIDGET_H
#define MYWIDGET_H

#include <QtGui/QWidget>
#include <QPushButton>
#include <QLabel>
#include <QFile>

class MyWidget : public QWidget
{
    Q_OBJECT

public:
    MyWidget(QWidget *parent = 0);
    ~MyWidget();
    QLabel      *lab1;
    QPushButton *but1;
    QFile       *index;

private slots:
    void open1();




};

#endif // MYWIDGET_H
Die txt Datei befindet sich im selben ordner wie das Prog.
Kann nicht verstehen warum.
Wissen ist die einzige Ressource, die sich vermehrt wenn man sie teilt
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Wird die qrc-Datei überhaupt eingebunden? Bitte erzeug ein kleines Beispielprogramm (als zip) und hänge es an damit wir es uns anschauen können.
Für mich sieht es so aus als würde die qrc-Datei gar nicht mit kompiliert.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
24dan
Beiträge: 274
Registriert: 26. Juni 2006 14:15
Wohnort: Hamburg

Beitrag von 24dan »

Die txt Datei befindet sich im selben ordner wie das Prog.
Kann nicht verstehen warum.
Du bist dir sicher das es im gleichen ordner nicht das dein prog im debug ordner läuft und du die sachen unter dem Projekt Ordner abgelegt hast? :roll:
"Der erste Trunk aus dem Becher der Naturwissenschaften macht atheistisch, aber auf dem Grund des Bechers wartet Gott."
(W. Heisenberg)
Antworten