2013-10-10 110 views
1
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()返回包含從文件讀取的所有數據的向量。 這是打印矢量中的所有內容。然而,我無法弄清楚如何格式化每一件事情在一個載體以特定的方式:需要幫助格式化字符串輸出

記錄開始從左側0位
FNAME從左側
LNAME開始啓動10位後右即FNAME
PHONENUM開始從左側30米的空間中所有線1

後的空間。這裏是一個圖片的例子(不能在此線程編輯器格式...)

http://i.imgur.com/bbAlDWX.png

我明白這一點可以通過運輸及工務局局長()來完成,但多數民衆贊成只有當你直接通過輸出< <運營商(或者我錯了嗎?)。它需要以字符串的形式,所以我可以通過套接字將它發送給客戶端。

有誰知道我能做什麼?

+0

您的圖像有錯誤 –

回答

2

#include <iomanip>並使用其所有工具。

您可以用同樣的方式建立一個string你與cout輸出,如果你#include <sstream>和使用stringstreams

stringstream ss; 
ss << //do stuff the same way you'd cout 
return ss.str(); //or whatever you need to do with the built string 
+0

哦好吧,我想試試,用結果回來。 – Evan

+0

它的作品,非常感謝! – Evan