0 / 0 / 0
Регистрация: 26.03.2018
Сообщений: 216
1

Переписать слова из одного файла в другой согласно условию

22.06.2019, 17:32. Показов 1029. Ответов 9
Метки нет (Все метки)

из одного тексового файла в другой текстовый файл переписать строки, в которых нет латинских букв.
Помогите, пожалуйста. я так понимаю, нужно разбить текст на слова, а затем слова на символы и сравнивать со значениями a-z, A-Z. если не равно, то слово переписать, но как это реализовать не знаю
using System;
using System.IO;


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
using System;
using System.IO;
 
 
namespace ConsoleApp18
{
    class Program
    {
 
 
 
        static void Main(string[] args)
        {
 
            string s;
            string c;
            StreamReader f = new StreamReader("d:\\1.txt");
            StreamWriter f1 = new StreamWriter("d:\\2.txt");
            bool a = false;
            for (; (s = f.ReadLine()) != null;)
            {
                c = "";
                for (int i = 0; i < s.Length; i++)
                    if (s[i] >= 'А' && s[i] <= 'Я' || s[i] >= 'а' && s[i] <= 'я') c += s[i];
                f1.WriteLine(c);
            }
            
            
            
        }
 
 
    }
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.06.2019, 17:32
Ответы с готовыми решениями:

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

Переписать из одного файла в другой информацию о кубиках согласно условию
Сформировать файл К, содержащий информацию о кубики: размер каждого кубика (длина ребра в см.);...

Переписать данные их одного файла в другой согласно конкретному варианту
Постановка задачи Необходимо переписать данные их одного файла в другой согласно конкретному...

Переписать слова из одного файла в другой, разбив их строками
Нужна не столько работающая программа, сколько объяснение, как это изобразить. Задание такое: В...

9
289 / 191 / 104
Регистрация: 14.11.2017
Сообщений: 489
22.06.2019, 17:55 2
Как вариант возможно такое решение:
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
static void Main(string[] args)
{
    StreamReader input = new StreamReader("/home/zhurban/Документы/array.txt");
    StreamWriter output = new StreamWriter("/home/zhurban/Документы/output.txt");
    string str;
    bool isWritable = false;
    for (; (str = input.ReadLine()) != null;)
    {
        isWritable = true;
        for (int i = 0; i < str.Length; i++)
        {
            if (str[i] >= 65 && str[i] <= 90 || str[i] >= 97 && str[i] <= 122)//латинница строчная и заглавная
            {
                isWritable = false;
                break;
            }
        }
        if (isWritable)
        {
            output.WriteLine(str);
            output.Flush();
        }
    }
}
0
0 / 0 / 0
Регистрация: 26.03.2018
Сообщений: 216
22.06.2019, 18:17  [ТС] 3
Eduard Nanaki, спасибо! А str[i] я не могу сравнивать со значениями a-z, ибо там ошибка будет из-за типов. Нельзя как-то преобразовать этот момент?
0
289 / 191 / 104
Регистрация: 14.11.2017
Сообщений: 489
22.06.2019, 18:21 4
dreems, что именно? Если вы за условие, то и вот такое будет вполне корректно и работоспособно (ведь все char`ы - это числа по сути. А значения в примере выше я брал из таблицы):
C#
1
if (str[i] >= 'A' && str[i] <= 'Z' || str[i] >= 'a' && str[i] <= 'z')
С кириллицей тоже работает корректно если что
0
3440 / 2449 / 1168
Регистрация: 14.08.2016
Сообщений: 8,138
22.06.2019, 18:28 5
C#
1
File.WriteAllLines("pathOut.txt", File.ReadAllLines("pathIn.txt",Encoding.Default).Where(x => Regex.IsMatch(x, @"[^a-zA-Z")),Encoding.Default);
C#
1
using System.Text.RegularExpressions;
0
0 / 0 / 0
Регистрация: 26.03.2018
Сообщений: 216
22.06.2019, 19:26  [ТС] 6
Eduard Nanaki, спасибо!
0
0 / 0 / 0
Регистрация: 26.03.2018
Сообщений: 216
23.06.2019, 16:47  [ТС] 7
Eduard Nanaki, подскажите, пожалуйста, у меня в выходном файле вместо букв знаки вопросов. пробовал менять шрифты на другие, но ничего не меняется, можно это как-то исправить?
0
289 / 191 / 104
Регистрация: 14.11.2017
Сообщений: 489
23.06.2019, 17:10 8
dreems, скорее всего проблема в кодировке. Попробуйте определить кодировку полученого текста с помощью этого ресурса. И тогда уже с такой кодировкой открывать полученый файл/искать решение. Ещё раз повторюсь - проблема в кодировке.
0
0 / 0 / 0
Регистрация: 26.03.2018
Сообщений: 216
23.06.2019, 17:14  [ТС] 9
Eduard Nanaki, определяет, что кодировка - кириллица виндовс
0
289 / 191 / 104
Регистрация: 14.11.2017
Сообщений: 489
23.06.2019, 22:39 10
dreems, посмотрите в какой кодировке Вы открываете файл. Попробуйте в этой программе сменить кодировку (на нужную вам). Или же можно найти иные способы записи символов в файл с нужной вам кодировкой, как, например, в ответе Diamante.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.06.2019, 22:39
Помогаю со студенческими работами здесь

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

Переписать все слова из одного файла в другой в алфавитном порядке
Переписать все слова из одного файла в другой в алфавитном порядке.

Переписать из одного файла в другой слова длиной 1, 3, 5 или 7 букв
&quot;Прочитать текст с файла F и записать в файл g только те слова, которые имеют не парное количество...

Переписать данные из одного файла в другой,удалив слова определенной длины
Дан файл а . Переписать содержимое в файл B.Удалить слова,длина которых меньше заданной в командной...

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

Переписать текст из одного файла в другой
всем привет:) вот имеется прога, которая из одного txt-шного файла переводит текст в другой! все...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru