Ĺadny brzuch
Jak przeslac plik za pomoca tserver i clijent socket szukalem ale wszystko jest w delphi a ja bym chcial to w bcb wiem ze musze pobrac bufor z pliku i go wysylac ale nie wiem jak to zrobic dokladnie najbardziej interesuje mnie jak pobrac ten bufer
Możesz po prostu odczytywać z pliku jakąś porcję tekstu do tablicy znaków, a następnie wysyłać ją do gniazdka.
Potrzebne komendy:
- TSocket::SendBuf,
- TSocket::ReceiveBuf,
- coś do odczytywania z pliku, na przykład ifstream::get.
Użytkownik Chmurek edytował ten post 04 kwiecień 2006, 16:49
A jak duza porcja tego tekstu ma byc??
A jak duza porcja tego tekstu ma byc?? Określ bufor wielkości np. 8192 bajtów do neta lub duuuuuuużo więcej dla lanu :)
Czyli im wolniejsze polaczenie tym mniejsza paczka i domyslam sie ze przy szybkim laczu jezeli bede robil wieksze paczki to bedzie szybciej ciagnelo.A co sie stanie jezeli na net wezme duuuuzo wieksza ??
(...) A co sie stanie jezeli na net wezme duuuuzo wieksza ?? Po prostu możesz nie wykorzystać maks. przepustowości łącza ;)
Trochę nie jestem pewien co wielkość porcji danych wysyłanych na gniazdko ma mieć wspólnego z prędkością ich przesyłania... Do pewnych (małych) wartości może ma to jakieś znaczenie, ale tak małych i tak się raczej nie używa. Proponuję 1 kB lub mniej, szczególnie jeśli chcesz mierzyć prędkość transferu.
Mam problem bo chcialem wykozystac ifstram no i do pobrania bufora dalem cos takiego infile.get(Buf, sizeof(Buf)); ale to odczytuje jedynie do znaku spacju lub enter jak to zrobic zeby mozna bylo pobierac kazdy znak wlacznie ze spacja i entrem
Użytkownik Maki edytował ten post 05 kwiecień 2006, 20:54
Po pierwsze dowiedz się jak działa sizeof, bo to co napisałeś jest wyraźnie błędne. *
Po drugie zajrzyj tutaj i naucz się korzystać z wyszukiwaerek internetowych.
* Co prawda będzie działać tak jak oczekujesz od tego, że będzie, ale tylko wtedy, gdy Buf będzie wskaźnikiem na statycznie zaalokowaną tablicą zadeklarowaną w tym samym zasięgu.
Użytkownik Chmurek edytował ten post 05 kwiecień 2006, 21:06
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Możesz po prostu odczytywać z pliku jakąś porcję tekstu do tablicy znaków, a następnie wysyłać ją do gniazdka.
Potrzebne komendy:
- TSocket::SendBuf,
- TSocket::ReceiveBuf,
- coś do odczytywania z pliku, na przykład ifstream::get.
Użytkownik Chmurek edytował ten post 04 kwiecień 2006, 16:49
A jak duza porcja tego tekstu ma byc??
A jak duza porcja tego tekstu ma byc?? Określ bufor wielkości np. 8192 bajtów do neta lub duuuuuuużo więcej dla lanu :)
Czyli im wolniejsze polaczenie tym mniejsza paczka i domyslam sie ze przy szybkim laczu jezeli bede robil wieksze paczki to bedzie szybciej ciagnelo.A co sie stanie jezeli na net wezme duuuuzo wieksza ??
(...) A co sie stanie jezeli na net wezme duuuuzo wieksza ?? Po prostu możesz nie wykorzystać maks. przepustowości łącza ;)
Trochę nie jestem pewien co wielkość porcji danych wysyłanych na gniazdko ma mieć wspólnego z prędkością ich przesyłania... Do pewnych (małych) wartości może ma to jakieś znaczenie, ale tak małych i tak się raczej nie używa. Proponuję 1 kB lub mniej, szczególnie jeśli chcesz mierzyć prędkość transferu.
Mam problem bo chcialem wykozystac ifstram no i do pobrania bufora dalem cos takiego infile.get(Buf, sizeof(Buf)); ale to odczytuje jedynie do znaku spacju lub enter jak to zrobic zeby mozna bylo pobierac kazdy znak wlacznie ze spacja i entrem
Użytkownik Maki edytował ten post 05 kwiecień 2006, 20:54
Po pierwsze dowiedz się jak działa sizeof, bo to co napisałeś jest wyraźnie błędne. *
Po drugie zajrzyj tutaj i naucz się korzystać z wyszukiwaerek internetowych.
* Co prawda będzie działać tak jak oczekujesz od tego, że będzie, ale tylko wtedy, gdy Buf będzie wskaźnikiem na statycznie zaalokowaną tablicą zadeklarowaną w tym samym zasięgu.
Użytkownik Chmurek edytował ten post 05 kwiecień 2006, 21:06