2014-01-23 5 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

Смежные вопросы