vector<data> getList = readContent();
string output = "";
ostringstream conv;
istringstream is;
output += "s: 200 OK\nThe list of records in the book:\n";
for(int j = 0; j < getList.size(); j++)
{
conv << getList[j].record;
output += conv.str();
output += " ";
output += getList[j].fName;
output += " ";
output += getList[j].lName;
output += " ";
output += getList[j].phoneNum;
output += " \n";
conv.str("");
}
send(s, (char *)output.c_str(), strlen((char *)output.c_str()), 0);
readContent() は、ファイルから読み取ったすべてのデータを含むベクトルを返します。これは、ベクトルにあるすべてを印刷しています。ただし、特定の方法でベクトル内の各ものをフォーマットする方法がわかりません。
recordは左側から 0 スペースで始まります
fNameは左側から 10 スペースで始まります
lNameはスペースの直後から始まります fName の後にある
phoneNumは左側から 30 スペースで始まります
すべて1行で。 ここに画像の例があります (このスレッド エディタではフォーマットできません...)
http://i.imgur.com/bbAlDWX.png
setw() を使用してこれを実行できることは理解していますが、それは << 演算子を使用して直接出力している場合のみです (または間違っていますか?)。ソケットを介してクライアントに送信できるように、文字列の形式にする必要があります。
私に何ができるか知っている人はいますか?