在C ++中将字节字符串转换为普通字符串

时间:2018-01-05 10:43:50

标签: c++ arrays string sockets

我有以下情况:

我实际上是尝试将服务器中的streamdata读入Visual Studio中的标签:

//Receive a reply from the server
if((recv_size = recv(ConnectSocket , server_reply , 2000 , 0)) == SOCKET_ERROR){
    MessageBox::Show("recv failed","");
    //exit(1);
}

this->label1->Text = Convert::ToString(server_reply[0]);

示例结果:
ANAG; FCA; 11:20:27; NL0010877643; FIAT CHRYSLER AUTO; 16.85; 0.0; 0

当我进入我的程序时,我喜欢它: 657865 ...

我认为是相应字符的字节表示(例如:65 = A,78 = N等)。

问题是:如何将这些字节码转换为正常的字符串?

服务器似乎正在发送字节数据

提前致谢

1 个答案:

答案 0 :(得分:1)

您只需要从中创建一个字符串。

#include <iostream>
#include <string>

using namespace std;

int main()
{
  char byteArray[] = { 65, 78, 65, 71 }; // .... your input
  std::string s(byteArray, sizeof(byteArray));
  cout << s;
  return 0;
}