odczyt danych z pliku *.txt w qt
Ostatnio zmodyfikowano 2015-12-15 19:59
Masterpc16 Temat założony przez niniejszego użytkownika |
odczyt danych z pliku *.txt w qt » 2015-12-14 22:23:50 Witajcie siedzę szukam i znaleźć nie mogę. Chcę otworzyć plik txt w qt i przypisać wartość z jednej linii zmiennej qstring. Znalazłem porady jak otworzyć plik przez okno dialogowe ale nie oto mi chodzi. Normalnie w c++ zrobiłbym tak #include <iostream> #include <fstream> #include <string> using namespace std; int main() { ifstream plik( "dane.txt" ); string wyraz; plik >> wyraz; }
Nie wiem jak to przełożyć na qt :/ |
|
sajmon |
» 2015-12-15 00:31:20 Poszukaj pod QFile i QTextStream ;) |
|
mateczek |
» 2015-12-15 06:29:15 przeważnie wystarcza dołożyć "Q" na początek :P (żarcik :P) dokumentacja QT jest bardzo przyjazna. Na stronie opisu danej klasy jest masa krótkich przykładów!!! QFile file( "/proc/modules" ); if( !file.open( QIODevice::ReadOnly | QIODevice::Text ) ) return;
QTextStream in( & file ); QString wyraz; in >> wyraz;
|
|
Masterpc16 Temat założony przez niniejszego użytkownika |
» 2015-12-15 14:14:57 Dzięki wielkie. zmodyfikowałem sobie trochę i działa. Tylko wtajemniczcie mnie po co ta funkcja: QTextStream in( & file );
czemu ona dane ze strumienia przypisuje zmienne in? |
|
mateczek |
» 2015-12-15 14:28:34 jest to fragment z pomocy odnośnie klasy qfile http://doc.qt.io/qt-5/qfile.html czemu ona dane ze strumienia przypisuje zmienne in? | nie wiem skąd czy przyszło do głowy że to funkcja??? To jest czyste c++!!! Taką deklarację czytasz następująco: "in" jest obiektem typu "qtextstrem", a do konstruktora obiektu przekazujesz wskaźnik do obiektu klasy file!!! To nie funkcja (jeszcze raz zaznacze) !!! Tak się w c++ deklaruje obiekty!!! Zresztą zobacz że: QTextStream in( & file ); ifstream plik( "dane.txt" );
Te dwie konstrukcje prawie się nie różnią !!! obiekt "ifstream plik" sam wykona otwarcie pliku o podanej ścieżce. A obiekt " QTextStream in" potrzebuje wskaźnika do już otwartego pliku !!! |
|
Masterpc16 Temat założony przez niniejszego użytkownika |
» 2015-12-15 19:59:35 Dzięki za odpowiedzi :) |
|
« 1 » |