Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.65/26: Рейтинг темы: голосов - 26, средняя оценка - 4.65
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
.NET 2.x

Копирование файла, использования потока, и ошибка "Файл занят"

13.02.2015, 08:55. Показов 5556. Ответов 30
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ошибка
при выполнения пишет процесс занят другим процессом

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
static void copy_file (string old_file,string new_file)
        {
            int n = 0, numbytestoread = 0, numbytesread=0,progress_all=0;
            FileInfo olds=new FileInfo(old_file);
            FileInfo news=new FileInfo(new_file);
 
            try
            {
                using (FileStream old_stream = new FileStream(olds.Name, FileMode.Open, FileAccess.Read))
                {
                    numbytestoread = (int)olds.Name.Length;
                    numbytesread = 0;
                    byte[] bytes = File.ReadAllBytes(olds.Name);
                    progress_all = bytes.Length;
                    while (numbytestoread > 0)
                    {
                        n = old_stream.Read(bytes, 0, numbytestoread);
                        if (n == 0)
                        {
                            break;
                        }
                        numbytesread += n;
                        numbytestoread -= n;
                    }
                    numbytestoread = bytes.Length;
                    using (FileStream new_stream = new FileStream(news.Name, FileMode.Create, FileAccess.Write))
                    {
                        new_stream.Write(bytes, 0, numbytestoread);
                        Console.WriteLine("Progress: " + numbytestoread / progress_all + "%");
                        new_stream.Close();
                    }
                    old_stream.Close();
                }
                
                   
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message,"ОШИБКА",MessageBoxButtons.OK,MessageBoxIcon.Error);
            }
        }
как решить
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.02.2015, 08:55
Ответы с готовыми решениями:

Копирование файла на место удаленного. Ошибка "Файл занят"
Столкнулся с очень своеобразной проблемой. В цикле постоянно копируется и запускается консольная программа, их около 200 разных, но всегда...

Копирование файла, использования потока, и byte
На NET Framework 2.0 Ошибка на MSDN using (FileStream old_stream = new FileStream(olds.Name, File.Open, FileAccess.Read)) // ...

Редактирование загруженного файла в Image: ошибка - файл занят другим процессом
Загружаю все файлы jpg из выбранной папки для отображения в Image Dim LB as New ListBox() Dim dlg as New OpenFileDialog() Private...

30
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
18.02.2015, 09:45  [ТС]
Студворк — интернет-сервис помощи студентам
Я понял потому что используеться int для записи , но не long

C#
1
new_stream.Write(buff, 0, (int)read_buff_byte); // int для записи , а не long
Так что ты предлагаешь ?
чтоб реализовывать разные размеры , гигантские

И что означает это
C#
1
fsutil file createnew 5gb.bin 5368709120 // Шо оно такое ?
Шо оно такое ?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
18.02.2015, 12:25
Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
Я понял потому что используеться int для записи , но не long
Нет. Причина совсем в другом.

Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
5368709120 // Шо оно такое ?
Это 5 Гб = 5 * 1024 * 1024 * 1024
0
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
18.02.2015, 13:58  [ТС]
Это понятно и так
1 байт = 8 бит
1 Кбайт = 1024 байт = 8*1024 бит
1 Мбайт = 1024 Кбайт = 1024*1024 байт =1024*1024*8 бит
1 Гбайт = 1024 Мбайт = 1024*1024*1024 байт=1024*1024*1024*8 бит
1 Тбайт = 1024 Гбайт = 1024*1024*1024*1024 байт=1024*1024*1024*1024*8 бит
1 Петабайт = 1024 Тбайт = 1024*1024*1024*1024*1024 байт=1024*1024*1024*1024*1024*8 бит
1 Эксабайт = 1024 * 1024 Тбайт = 1024*1024*1024*1024*1024*1024 байт
1 Зеттабайт = 1024 * 1024*1024 Тбайт = 1024*1024*1024*1024*1024*1024*1024 байт
1 Йоттабайт = 1024 * 1024*1024 * 1024 Тбайт =1024*1024*1024*1024*1024*1024*1024*1024 байт

И так далее

Вопрос в другом , а как тогда решить те 4.5 ГБ копирования что ты предложил, 1024~1000 если что
вот и вопрос как тогда их копировать ?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
18.02.2015, 16:35
Лучший ответ Сообщение было отмечено GENDALF_ISTARI как решение

Решение

GENDALF_ISTARI, я пытаюсь добиться чтобы ты сам понял что нужно исправить. Посмотри на третий пример здесь - #post7225394. Прочитай описание алгоритма здесь - #post7228257. Подумай как это соотносится с чем ты написал ты и что нужно исправить.

Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
И что означает это
fsutil file createnew 5gb.bin 5368709120 // Шо оно такое ?
Я думал ты спрашиваешь только про число. Это команда с помощью которой можно быстро создавать файлы произвольной длины. Запускать её нужно из командной строки Windows (cmd.exe) или из программы типа Total Commander или FAR Manager.
1
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
19.03.2015, 10:14  [ТС]
Вот сварил похожое как бы CMD
Вложения
Тип файла: rar copy_files.rar (435.3 Кб, 3 просмотров)
0
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
19.03.2015, 10:20  [ТС]
только проблемка с рускими словами
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
19.03.2015, 15:46
Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
только проблемка с рускими словами
У меня дежавю.
0
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
21.03.2015, 13:13  [ТС]
Аа точно UTF-16, а можно в UTF-32 кодировке мудрец

C#
1
Encoding.UTF32;
Добавлено через 44 секунды
Вторая проблема это копирование файла без формата

Добавлено через 1 минуту
например код
Bash
1
copy_files C:\file D:\  30000
Тут прога скажет не верный формат файла
это проблема
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
21.03.2015, 14:31
Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
Аа точно UTF-16, а можно в UTF-32 кодировке
Причем здесь UTF-32?

Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
например
copy_files C:\file D:\ 30000
Тут прога скажет не верный формат файла
У меня никаких ошибок не выдает. Зато сообщает что скорость копирования "-21474836 Мбайт/с". Это как???
1
 Аватар для GENDALF_ISTARI
16 / 33 / 19
Регистрация: 20.08.2013
Сообщений: 740
21.03.2015, 18:56  [ТС]
эх шо то я переборщил c
C#
1
Stopwatch testStopwatch = new Stopwatch();
Что ты там такое копировал ?

Да и загадочно как у тебя удалось без формата
скопировать что то ?
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18417 / 14348 / 5371
Регистрация: 17.03.2014
Сообщений: 29,032
Записей в блоге: 1
21.03.2015, 19:03
Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
Что ты там такое копировал
По моему это происходит с маленькими файлами т.к. они копируются очень быстро. У меня был файл меньше чем 1 Кб.

Цитата Сообщение от GENDALF_ISTARI Посмотреть сообщение
Да и загадочно как у тебя удалось без формата скопировать что то?
Тебе лучше знать. Это же твой код Я в него сильно не вчитывался. Отладчик в руки и вперед.
[зануда]Это называется расширение, а не формат.[/зануда]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.03.2015, 19:03

Ошибка: Файл занят другим процессом
Доброго времени суток. Пишу программку которая должна перемещать изображения с разрешением 1920х1080 в отдельную папку. С определением...

Если файл занят, то выскакивает ошибка
У меня прога написана на хеширование значений. Процесс хеширования очень долгий и я не знаю, когда она завершится (хеш записывает в...

Копирование входного потока в файл
Всем привет! Я написал программу, которая копирует входной поток в файл, но есть одна загвоздка. Если я не добавляю две команды nop, то у...

Ошибка сервера. Файл занят другой программой
Привет! при открытии документа из вида у некоторых пользователей выскакивает сообщение (см рис) Причем только у них, у других все ок...

Сериализация xml. Ошибка-файл занят другим процессом
В общем то все делаю "по книжке" и почти работает. Но когда я сохраняю файл и пытаюсь его тут же сразу прочесть - ошибка.. Если сохраняю...


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

Или воспользуйтесь поиском по форуму:
31
Ответ Создать тему
Новые блоги и статьи
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru