Мне нужно отправить файл txt через соединение сокета по запросу клиента. Проблема в том, что я не могу понять, как преобразовать из двоичного формата в ASCII. С помощью этого кода клиент получает только нежелательные символы.Потоковая передача .txt через сокет C++
ifstream file;
char output [logfilesize];
file.open("log.txt");
file >> output;
send(socket, output, sizeof(output), 0);
cout << output << endl;
file.close
Извините, если вопрос задан несколько раз, но после прочтения всего сообщения я не мог понять, как заставить его работать.
Thank's!
Редактировать: Рабочий код!
int lenght;
char * logf;
ifstream file;
file.open("log.txt");
file.seekg(0, ios::end);
lenght = file.tellg();
file.seekg(0, ios::beg);
logf = new char [lenght];
file.read(logf, lenght);
file.close();
cout.write (logf, lenght);
send(soc,logf , lenght, 0);
delete[] logf;
Благодарим вас за полезные ответы. К сожалению, у меня все еще проблема с send(). Клиент получает только первый символ документа. – 01BTC10
Я добавил новый код в свой первый пост. – 01BTC10
@ user38586, трудно сказать, не зная, как выглядит код клиента. – Nim