Считать файл и вывести на консоль, сколько раз встречался каждый символ - C#

Узнай цену своей работы

Формулировка задачи:

Привет ! Я умею считывать из файла текст и записывать его в другой файл или выводить на консоль. Я считывал по символу, но не знаю, как правильно их запомнить, чтобы потом проверить и в конечном итоге вывести на консоль Console.WriteLine("{0} {1}", symbol, count). Подскажите, кто знает.
    string pathSource = "text.txt";
    string pathNew = "text2.txt";
 
    try
    {
 
        using (FileStream fsSource = new FileStream(pathSource,
            FileMode.Open, FileAccess.Read))
        {
 
            // Read the source file into a byte array.
            byte[] bytes = new byte[fsSource.Length];
            int numBytesToRead = (int)fsSource.Length;
            int numBytesRead = 0;
            while (numBytesToRead > 0)
            {
                // Read may return anything from 0 to numBytesToRead.
                int n = fsSource.Read(bytes, numBytesRead, numBytesToRead);
 
                // Break when the end of the file is reached.
                if (n == 0)
                    break;
 
                numBytesRead += n;
                numBytesToRead -= n;
            }
             numBytesToRead = bytes.Length;
 
            // Write the byte array to the other FileStream.
            using (FileStream fsNew = new FileStream(pathNew,
                FileMode.Create, FileAccess.Write))
            {
                fsNew.Write(bytes, 0, numBytesToRead);
            }
        }
    }
    catch (FileNotFoundException ioEx)
    {
        Console.WriteLine(ioEx.Message);
    }
Уже решил сам
            var d=new Dictionary<char,int>();
 
            foreach (char c in File.ReadAllText("text.txt", Encoding.Default))
                if (!Char.IsControl(c))
                    if (d.ContainsKey(c))
                        d[c]++;
                    else
                        d.Add(c, 1);
 
            foreach (var kp in d)
                Console.WriteLine("Символ: {0} встречается {1} раз", kp.Key, kp.Value);
Подскажите, что значит: считать файл, который принят в качестве параметра из командной строки ? Как это реализовать ?

Решение задачи: «Считать файл и вывести на консоль, сколько раз встречался каждый символ»

textual
Листинг программы
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication5 {
    class Program {
        static void Main(string[] args) {
            string dataString = "jguvinnghHHyfhsbbrfna''hi mdhsyGGTECCnfh";
            var allGroups = dataString.GroupBy(s => (int)s).OrderBy(s => s.Key);
            foreach (var group in allGroups) {
                Console.WriteLine("Символ {0} встречается {1} раз", (char)group.Key, group.Count());
            }
            Console.ReadLine();
        }
    }
}

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5
Похожие ответы