Создать файл, состоящий из слов. Вывести на экран все слова, которые начинаются на заданную букву - C#
Формулировка задачи:
Добрый день.
Это мой первый вопрос на форуме.
Прошу помочь с задачкой: "Создать файл, состоящий из слов. Вывести на экран все слова, которые начинаются на заданную букву."
Условие задачи таково, что надо использовать файл .dat а не .txt
Мое решение приведено ниже, в ответе выдает "?fdfg?fhahdh?fkkk", а хотелось бы вместо знаков ?, что были пробелы (на месте знаков ?, в консоли отображаются ? в квадратах).
Спасибо)
Листинг программы
- static void Main()
- {
- string line = "fdfg fhahdh fkkk iii? ppp";
- Console.WriteLine("fdfgf hahdh fkkk iii? ppp");
- Console.WriteLine("Введите букву");
- char b = 'f';
- Console.Write("b={0}",b);
- string[] lineAr = line.Split(' ');
- FileStream f = new FileStream("ch3.dat", FileMode.Create);
- BinaryWriter fOut = new BinaryWriter(f);
- for (int i = 0; i < lineAr.Length; ++i)
- {
- if(lineAr[i][0] == b)
- fOut.Write(lineAr[i]);
- }
- fOut.Close();
- f = new FileStream("ch3.dat", FileMode.Open);
- BinaryReader fln = new BinaryReader(f);
- long m = f.Length;
- Console.WriteLine(m);
- for(long i = 0; i<m; i+=1)
- {
- f.Seek(i, SeekOrigin.Begin);
- Console.Write(fln.ReadChar());
- }
- Console.ReadLine();
- }
Решение задачи: «Создать файл, состоящий из слов. Вывести на экран все слова, которые начинаются на заданную букву»
textual
Листинг программы
- using System;
- using System.IO;
- class Mem
- {
- static void Main()
- {
- Console.WriteLine("Введите строку : ");
- string line = Console.ReadLine();
- Console.WriteLine("line = "+line);
- Console.Write("Введите букву : ");
- char b = char.Parse(Console.ReadLine());
- Console.WriteLine("b = {0}", b);
- string[] lineAr = line.Split(' ');
- FileStream f = new FileStream("ch3.dat", FileMode.Create);
- StreamWriter mem = new StreamWriter(f);
- for (int i = 0; i < lineAr.Length; ++i)
- {
- if (lineAr[i][0] == b)
- mem.Write(lineAr[i] +" ");
- }
- mem.Close();
- f = new FileStream("ch3.dat", FileMode.Open);
- long m = f.Length;
- Console.WriteLine("длина : "+m);
- for (long i = 0; i < m; i += 1)
- Console.Write((char)f.ReadByte());
- Console.WriteLine();
- Console.ReadKey(true);
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д