2014-01-23 26 views
0

我正在嘗試做一些我認爲很直接的事情,但是我對C/C++很陌生,所以它證明有點棘手。 基本上我試圖從一個.txt中包含的數據中刪除一個空格。每條數據都在單獨的一行上:從C++中的字符串中刪除空格

01011 0 
11100 1 
00001 0 

等等。我已經能夠計算行數和每個字符串的大小(包括空格),但是我想丟失數據中的空白。 我在讀取數據的代碼(包括空格如下所示):

std::ifstream myfile ("random.txt"); 
std::string str; 
if(myfile.is_open()) 
       { 
       while (std::getline(myfile, str)) 
        { 
        i++; 
        Size = str.size(); 
        data_input[i] = str; 
        line_num = i; 
        array_count = line_num * Size; 
        } 
       i = 0; 
       } 

我已經看過了各個崗位,但似乎無法找到一個適合我試圖實現。任何幫助,將不勝感激。

回答

1
str.erase(str.find(' '), 1); 

說明:

  1. 呼叫到str.find返回該空間的位置(索引)。
  2. 撥打str.erase將從該位置開始移除一個字符。
+0

完美地工作,謝謝你。 – AimSkyward