Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Hader123
0 / 0 / 0
Регистрация: 22.12.2015
Сообщений: 4
#1

Заменить в файле все большие латинские буквы на маленькие русские

22.12.2015, 00:52. Просмотров 465. Ответов 6
Метки нет (Все метки)

Добрый вечер. Помогите пожалуйста. Нужно заменить в файле все большие латинские буквы на маленькие русские.
Вроде написал, но в выходном файле какая то чушь.
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include <iostream> 
#include <fstream> 
#include <string>
using namespace std;
 
string getInfo();
void transfer(fstream &, fstream &, string);
 
int main()
{
    setlocale(LC_ALL, "Russian");
    fstream sourceFile, destinationFile;
    string fileName, line, line2;
 
    fileName = getInfo();
 
    //Открыть файл
    sourceFile.open(fileName, ios::in);
 
    if (sourceFile.fail()) 
    {
        cout << "ERROR: Cannot open the file. \n" ; 
        system("pause");
        return 0; 
    }
    
    destinationFile.open("dout.txt", ios::out);
    transfer(sourceFile, destinationFile, line);    
    
    system("pause");
    return 0;
}
 
string getInfo()
{
    string fName;
    cout << "Enter name of file: ";
    cin >> fName;
    cin.ignore();
    fName += ".txt";
 
    return fName;
}
 
 
void transfer(fstream & sFile, fstream & dFile, string line)
{
 
ifstream fin("1.txt");
ofstream fout("dout.txt");
char c[100];
for(int i=0;i<strlen(c);i++)
{
    switch(c[i])
    {
    case 'A':c[i]='а';break;
    case 'B':c[i]='б';break;
    case 'C':c[i]='ц';break;
    case 'D':c[i]='д';break;
    case 'E':c[i]='е';break;
    case 'F':c[i]='ф';break;
    case 'G':c[i]='г';break;
    case 'H':c[i]='н';break;
    case 'I':c[i]='и';break;
    case 'J':c[i]='й';break;
    case 'K':c[i]='к';break;
    case 'L':c[i]='л';break;
    case 'M':c[i]='м';break;
    case 'N':c[i]='н';break;
    case 'O':c[i]='о';break;
    case 'P':c[i]='п';break;
    case 'Q':c[i]='я';break;
    case 'R':c[i]='р';break;
    case 'S':c[i]='с';break;
    case 'T':c[i]='т';break;
    case 'U':c[i]='у';break;
    case 'V':c[i]='в';break;
    case 'W':c[i]='в';break;
    case 'Y':c[i]='ы';break;
    case 'Z':c[i]='з';break;
    }
}
fout<<c;
fout.close();
}

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.12.2015, 00:52
Ответы с готовыми решениями:

В выходном файле заменить все маленькие буквы на большие
Добрый вечер всем. Ребят помоги с программой очень прошу, нужно создать...

Заменить в слове все маленькие латинские буквы от ‘a’ до ‘y’ на следующие по алфавиту
Дано слово. Заменить в слове все маленькие латинские буквы от ‘a’ до ‘y’ на...

В каждой строке заменить все маленькие буквы после пробела или точки на большие
Помогите,пожалуйста,решить задачи,совершенно не понимаю,как их можно...

Во введенной строке заменить все гласные латинские буквы на русские соответственно
У меня установлен Borldand C++ Builder Dos Box. Как в нем ввести русский...

Дана строка. Заменить в ней все строчные (латинские и русские) буквы соответствующими заглавными.
8.2.1. Помогите, пожалуйста, решить задачу в С++. Дана строка. Заменить в...

6
Ryuk
179 / 177 / 56
Регистрация: 10.06.2011
Сообщений: 871
22.12.2015, 01:22 #2
Цитата Сообщение от Hader123 Посмотреть сообщение
char c[100];
Он же у вас пустой, а вы его через свич гоняете.
0
Hader123
0 / 0 / 0
Регистрация: 22.12.2015
Сообщений: 4
22.12.2015, 01:31  [ТС] #3
Файл не пустой. Там текст
0
Ryuk
179 / 177 / 56
Регистрация: 10.06.2011
Сообщений: 871
22.12.2015, 01:32 #4
Hader123, я имел ввиду
Цитата Сообщение от Hader123 Посмотреть сообщение
char c[100];
У вас он пустой.
0
Hader123
0 / 0 / 0
Регистрация: 22.12.2015
Сообщений: 4
22.12.2015, 01:36  [ТС] #5
Я кажется понял. Мне нужно поместить данные из файла в массив, а зтем из массива гонять через свич?

Добавлено через 37 секунд
юзая например fscanf
0
Ryuk
179 / 177 / 56
Регистрация: 10.06.2011
Сообщений: 871
22.12.2015, 01:40 #6
Цитата Сообщение от Hader123 Посмотреть сообщение
нужно поместить данные из файла в массив
Именно так.

Добавлено через 3 минуты
Цитата Сообщение от Hader123 Посмотреть сообщение
юзая например fscanf
Можно и так.
1
Hader123
0 / 0 / 0
Регистрация: 22.12.2015
Сообщений: 4
22.12.2015, 01:46  [ТС] #7
Спасибо
0
22.12.2015, 01:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2015, 01:46

Большие буквы O заменить на маленькие
Объясните где я сделал ошибку? Задание: все введенные большие буквы O заменить...

В новом файле заменить все латинские буквы верхнего регистра на буквы нижнего регистра
9. В новом файле заменить все латинские буквы верхнего регистра на буквы...

Если строка содержит больше пяти латинских "a",заменить все латинские и русские буквы строки следующими по алфавиту символами.
Написать программу,которая читает с клавиатуры строку символов,преобразует ее и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru