Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/8: Рейтинг темы: голосов - 8, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 14.06.2013
Сообщений: 16

Чтение бинарных файлов

15.06.2013, 15:47. Показов 1654. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.IO;
 
namespace ConsoleApplication2
{
    class Program
    {
       
        
        static void Main(string[] args)
        {
            
            Console.WriteLine("Введите полный путь к папке для поиска:");
            try
            {
                GetWords(); //Вызов функции поиска и обработки txt и lua файлов
            }
            catch
            {
                Console.WriteLine("Строка имеет неправильный формат!\nВведите полный путь к папке для поиска:");
                GetWords(); //Вызов функции поиска и обработки txt и lua файлов
            }
            Console.ReadLine();
           
        }
        public static void GetWords()
        {
           
            string per;//переменная для содержания пути к папке
            per = Console.ReadLine(); //заносим путь обрабатываемой папки в переменную
            DirectoryInfo dir = new DirectoryInfo(per);//обьект класса для поиска файлов по указанному фильтру
           
            FileInfo[] textfiles = dir.GetFiles("*.txt");//фильтр для txt файлов
            FileInfo[] luafiles = dir.GetFiles("*.lua");//фильтр для lua файлов
            //Вывод на экран названия файлов с расширением txt в указанной директории
            foreach (FileInfo f in textfiles)
            {
                Console.WriteLine("Имя : {0}", f.Name);
                Console.WriteLine("Длина : {0}", f.Length);
                Console.WriteLine("Время создания : " + f.CreationTime + "\n");
            }
            //Вывод на экран названия файлов с расширением lua в указанной директории
            foreach (FileInfo f in luafiles)
            {
                Console.WriteLine("Имя : {0}", f.Name);
                Console.WriteLine("Длина : {0}", f.Length);
                Console.WriteLine("Время создания : " + f.CreationTime + "\n");
            }
 
            var Namesfiles1 = new List<string>(); // список для имен файлов 
            foreach (FileInfo file in dir.GetFiles("*.txt")) // извлекаем txt файлы и кидаем их в список 
            {
                if (file.Name != "result.txt")//условие -если не файл результата,то
                {
                    Namesfiles1.Add(file.FullName); // получаем полный путь к файлу и кидаем его в список
                }
            }
            foreach (FileInfo file in dir.GetFiles("*.lua")) // извлекаем lua файлы и кидаем их в список 
            {
                Namesfiles1.Add(file.FullName); // получаем полный путь к файлу и кидаем его в список 
            }
 
            string[] sfile = new string[Namesfiles1.Count]; //создание массива для хранения пути к отфильтрованным файлам
            for (int i = 0; i < Namesfiles1.Count; i++)
            {
                sfile[i] = Namesfiles1[i].ToString(); //заносим отфильтрованные файлы в массив 
            }
            string result = "";//создание строки для хранения результата
            foreach (string el in sfile)
            {
                string a;//временная переменная для хранения слов
                try
                {
                    using (StreamReader strr = new StreamReader((string)el, Encoding.Default))//создаем поток для чтения файлов
                        a = strr.ReadToEnd();//читаем файл до конца 
                    int start = a.IndexOf('"');//начальная позиция разделителя
                    int end = a.IndexOf('"', start + 1);//конечная позиция разделителя
                    if (start != -1 && end != -1)//проверка на наличие разделителя
                    {
                        result += a.Substring(start + 1, (end - start) - 1) + Environment.NewLine;//заполнение строки результата отфильтрованными словами
                    }
                    else
                    {
                        Console.WriteLine("в файле отсутствуют разделители или файл не читабелен : \n {0}", el);
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
            try
            {
                using (StreamWriter str = new StreamWriter(per + "result.txt", false, Encoding.Default))//создание потока для записи конечного результата в файл 
 
                    str.Write(result);//запись результата в файл
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
    }
}


Прога считывает текстовые файлы с разрешением txt и lua ,то что в них находится между кавычками (" ") и записывает это содержимое в файл result.txt!

Не могу сделать дополнение к этой проге,чтобы она также считывала и записывала содeржимое Бинарныx файлов!
Тоесть если Бинарный файл с разрешениями txt и lua,содержимое также пихалось в result.txt!


2ая проблема:

C#
1
2
3
4
foreach (FileInfo file in dir.GetFiles("*.lua")) // извлекаем lua файлы и кидаем их в список 
            {
                Namesfiles1.Add(file.FullName); // получаем полный путь к файлу и кидаем его в список 
            }
Если папка без дочерных ,то всё нормально,но когда меняю на

C#
1
2
3
4
5
6
7
foreach (FileInfo file in dir.GetFiles("*.txt",SearchOption.AllDirectories)) // извлекаем txt файлы и кидаем их в список 
            {
                if (file.Name != "result.txt")//условие -если не файл результата,то
                {
                    Namesfiles1.Add(file.FullName); // получаем полный путь к файлу и кидаем его в список
                }
            }
Выбивает мне эррором!
Помогите с просмотром не только указанной папки,но и всех находящейся в ней папок...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.06.2013, 15:47
Ответы с готовыми решениями:

Создание бинарных файлов. Чтение и запись бинарных файлов
Здраствуйте. Сколько я не рылся в нете сколько не искал, как то все не доходит до меня тупого). На работе есть задание: 1. есть данные...

Запись и чтение бинарных файлов
Тем таких много вы можете сказать, но мне нужна помощь именно в ситуации, если вас не затруднит есть четыре листа List&lt;double&gt;...

Чтение бинарных файлов: Необработанное исключение типа "System.ArgumentException"
int buffer = 1024; byte Bytes = new byte; using (BinaryReader reader = new BinaryReader(File.Open(&quot;1.jpg&quot;, FileMode.Open))) { ...

1
YaKefir
15.06.2013, 23:04
Цитата Сообщение от iCan Посмотреть сообщение
Не могу сделать дополнение к этой проге
Непонятна суть проблемы.

Цитата Сообщение от iCan Посмотреть сообщение
Выбивает мне эррором!
Тоже непонятно, что у вас там за эрондондон и кто кого выбивает. Если появляется текст ошибки — напишите его здесь.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.06.2013, 23:04
Помогаю со студенческими работами здесь

Чтение и запись бинарных данных
Здравствуйте! Хочу реализовать чтение из файла скорей всего в коллекцию BitArray. После этого нужно будет редактировать коллекцию (в...

Считывание бинарных файлов
Здравствуйте! Подскажите, пжлст! Имеется бинарный файл. 1) Нужно его считать; 2) после считывания необходимо переставить байты местами у...

Программа для чтения бинарных файлов: не удается перевести код с другого ЯП
Составляю прогу для чтения бинирника, возникла такая проблема, собственно читаю по структуре type = struct WEAPON_ESSENCE { ...

Шифрование бинарных файлов
Как шифровать не текст а именно файл. &quot;*.exe&quot; или &quot;*.doc&quot; Есть идея чтобы сначало архивировать (gzip) а потом этот архив и шифровать...

Сжатие/разжатие бинарных файлов (SharpZipLib)
Требуется распаковать бинарный файл в некий temp-файл, выполнить с ним определённые действия в программе и затем заново запаковать. Имеется...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru