Форум программистов, компьютерный форум CyberForum.ru

Преобразование в верхний регистр - C++

Восстановить пароль Регистрация
 
starskreen
0 / 0 / 0
Регистрация: 09.04.2014
Сообщений: 8
09.04.2014, 14:12     Преобразование в верхний регистр #1
Народ нужна ваша помощь. Написал прогу чтоб из текстовика помещал строки в контейнер Vector, а оттуда в выходной файл. Но еще нужно отсортировать строки в контейнере в алфавитном порядке и преобразовать в верхний регистр.
Перепробовал всякие варианты типа toupper и ниче не получается)

вот собственно и код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include "stdafx.h"
#include <vector>
#include <string>
#include <fstream>
#include <iterator>
#include <algorithm>
#include <iostream>
#include <cstring>
#include <cctype>
 
 
 
int main()
{
    std::vector<std::string> vec;
    std::ifstream in("C:/1.txt");
 
    if (in.is_open())
    {
        for (std::string str; std::getline(in, str);)
            vec.push_back(std::move(str));
 
        
        std::ofstream out("C:/2.txt");
 
 
        if (vec.empty() == false)
            std::copy(vec.begin(), vec.end() , std::ostream_iterator<std::string>(out, "\n"));
    }
 
    return 0;
}
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SatanaXIII
Супер-модератор
Эксперт С++
 Аватар для SatanaXIII
5549 / 2563 / 233
Регистрация: 01.11.2011
Сообщений: 6,334
Завершенные тесты: 1
09.04.2014, 14:15     Преобразование в верхний регистр #2
Цитата Сообщение от starskreen Посмотреть сообщение
Перепробовал всякие варианты типа toupper и ниче не получается
И где вариант с tuapper?
Voivoid
 Аватар для Voivoid
580 / 256 / 12
Регистрация: 31.03.2013
Сообщений: 1,284
09.04.2014, 14:22     Преобразование в верхний регистр #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <algorithm>
#include <fstream>
#include <iterator>
#include <string>
#include <vector>
 
int main() {
  std::vector<std::string> vec;
  std::ifstream in( "C:/1.txt" );
 
  if( in.good() ) {
    std::transform( std::istream_iterator<std::string>( in ), std::istream_iterator<std::string>(), std::back_inserter( vec ), []( std::string s ) {
      std::transform( s.begin(), s.end(), s.begin(), toupper );
      return s;
    } );
 
    std::sort( vec.begin(), vec.end() );
 
    std::ofstream out( "C:/2.txt" );
    if( out.is_open() )
      std::copy( vec.begin(), vec.end(), std::ostream_iterator<std::string>( out, "\n" ) );
  }
 
  return 0;
}
starskreen
0 / 0 / 0
Регистрация: 09.04.2014
Сообщений: 8
09.04.2014, 14:31  [ТС]     Преобразование в верхний регистр #4
Спасибо))
Yandex
Объявления
09.04.2014, 14:31     Преобразование в верхний регистр
Ответ Создать тему
Опции темы

Текущее время: 03:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru