Próbuję odczytać plik i umieścić go w edytorze tekstu i ciągle mówi QIODevice :: read: device not open. Plik .txt znajduje się w tej samej lokalizacji, co mój plik .qrc i .cpp. Śledziłem krok po kroku z internetu. Z mojego zrozumienia zmieniły coś, gdy przeszły z Q4 na Q5. Czy ktoś ma jakąkolwiek wskazówkę, jak mogę to naprawić. DziękiQIODevice :: read: device not open
//My findstuff.h
#ifndef FINDSTUFF_H
#define FINDSTUFF_H
#include <QWidget>
namespace Ui {class FindStuff;}
class FindStuff : public QWidget{
Q_OBJECT
public:
explicit FindStuff(QWidget *parent = 0);
~FindStuff();
private slots:
void on_goButton_clicked();
private:
Ui::FindStuff *ui;
void getTextFile();
};
Czy możemy zobaczyć kod? Jeśli muszę zgadywać, nie otwierasz poprawnie pliku. Jeśli czytasz tylko z pliku, dlaczego nie używasz klasy 'QFile', czy po prostu używasz' fstream.h'? Dodatkowo, jeśli używasz Qt, plik .txt musi znajdować się w katalogu budowania, a nie w katalogu źródłowym (zakładając, że nie zmienisz katalogu roboczego). Jeśli użyjesz ustawień domyślnych, będzie to folder o nazwie 'build -% {CurrentProject: Name} -% {CurrentKit: FileSystemName} -% {CurrentBuild: Name}' – Lighthat
To nie pozwoli mi umieścić właściwej składni // My findstuff.h #ifndef FINDSTUFF_H #define FINDSTUFF_H #include Ui {class FindStuff; class klasy FindStuff: public QWidget {Q_OBJECTpublic: explicit FindStuff (QWidget * parent = 0); ~ FindStuff(); prywatne sloty: void on_goButton_clicked(); private: Ui :: FindStuff * ui; void getTextFile();}; –
user3878223
Kod, który nam podałeś, nie pomaga, musimy zobaczyć, jak używasz 'open()' – Lighthat