C ++ / C: обрезать первое слово каждой строки текстового файла - PullRequest
0 голосов
/ 21 мая 2011

Я ищу код C / C ++ или даже C #, который обрезает первое слово каждой строки в текстовом файле

например, file.txt

test C:\Windows\System32\cacl.exe
download C:\Program Files\MS\

Так что яостанется с:

C:\Windows\System32\cacl.exe
C:\Program Files\MS\

У меня есть текущий код, но, похоже, он не работает:

#include <stdio.h>
#include <string.h>

int main(int argc, char *argv[])
{
    char s[2048];
    while (fgets(s, sizeof(s), stdin))
    {
        char *pos = strpbrk(s, "|\r\n");
        if (pos != 0)
            fputs(pos+1, stdout);
    }
    return 0;
}

Ответы [ 4 ]

3 голосов
/ 21 мая 2011

C #:

var lines = File.ReadAllLines("...");
var removedFirstWords = from line in lines
                        select line.SubString(line.IndexOf(" ")+1);

(не проверял. Может содержать ошибки)

3 голосов
/ 21 мая 2011
#include <iostream>
using namespace std;

int main()
{
   string tmp;
   while ( !cin.eof() )
   {
      cin >> tmp;
      getline(cin, tmp);
      cout << tmp << endl;
   }
}
2 голосов
/ 21 мая 2011

В C #:

var fileContent = File.ReadAllText(@"c:\1.txt");
var result = Regex.Replace(fileContent, @"^\w*\s+(.*)$", "$1", RegexOptions.Multiline);
File.WriteAllText(@"c:\2.txt", result);
1 голос
/ 21 мая 2011

C #: -

string line = "test C:\Windows\System32\cacl.exe";

string output = line.substring(line.IndexOf(" "));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...