Mam problem. Potrzebuję program (najlepiej w c++), który będzie odczytywał plik .txt w taki sposób, że będzie otwierał przeglądarkę i wchodził w linki które są w tym pliku tekstowym. Czyli :
plik tekstowy wygląda np tak :
www.plemiona.pl
www.attitude.pl
www.wwe.pl
program odczytuje linki z pliku txt i wchodzi w każdy po kolei
nie wymagam od niego zamykania/ukrywania przeglądarki.
pomoże ktoś ;>
niestety jestem w c++ zielony i nie wiem jak się do tego zabrać. Na innym forum podpowiadali mi coś o fstream, ale ja tego wcale nie łapie … a program jest mi pilnie potrzebny
Jak się nie znasz to nie napiszesz, problem nie jest dla początkującego (choć jest w miarę prosty). Poproś kogoś aby Ci napisał, innego wyjścia nie widzę.
Nie jest. XML jest bardzo rozwlekły, dużo znaków - mało treści. Oczywiście przy bardziej rozbudowanych strukturach danych(np. struktura drzewiasta) jest bardzo dobrym rozwiązaniem, lecz w tym wypadku to po prostu strata czasu i pamięci.
Ale XML ma cudowną zaletę: jest coś takiego jak XMLserializer i wtedy możesz sobie pchnąć np całą klasę do pliku jednym ruchem i jednym ruchem przeczytać :).
Ale rzeczywiście Kolega nie che chyba zapisywać ustawień czy czegoś podobnego, więc nie będzie miał szansy zauważyć zalet XML.
Napisałem program dla tego kolegi, ale jak miał wysłać mi doładowanie komórki kontakt się urwał, proszę, ja to zrobiłem tak:
#include
#include
#include
using namespace std;
int main ()
{
ifstream iPlik ("linki.txt"); // stworzenie strumienia i otwarcie pliku
string sTemp; // utworzenie stringu
while (getline(iPlik,sTemp)) //utworzenie pętli która działa póki getline nie zwróci wartości false czyli koniec pliku
{
if (sTemp [0] != 'h' && sTemp [1] != 't' && sTemp [2] != 't' && sTemp [3] != 'p' && sTemp [4] != ':' && sTemp [5] != '/' && sTemp [6] != '/')// warunek sprawdzajacy czy na poczatku linku jest http://
{
string sCos; //pomocniczy string
sCos = "http://"; //wypelnienie pomocniczego stringu
sTemp = sCos + sTemp; //dodanie http:// do pierwszego
}
if ((int)ShellExecute (NULL,"open","firefox",sTemp.c_str(),NULL,SW_NORMAL) < 32) //sprawdzenie czy jest mozliwe otwarcie w firefoxie
{
ShellExecute (NULL,"open","explorer",sTemp.c_str(),NULL,SW_NORMAL); //jezeli nie da sie to odpalamy w IE
}
_sleep (7000); // zatrzymanie pracy programu na 7 sek
};
}
Według mnie to rozwiązanie jest lepsze, bo możemy wczytać nieograniczoną liczbę stron bez obawy o przepełnienie bufora