Стандартные операции с файлами |
Здравствуйте, гость ( Вход | Регистрация )
Стандартные операции с файлами |
Andrew Selivanov |
13.2.2008, 16:32
Сообщение
#1
|
Участник Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: 6 |
Вообщем то не открою Америки...
Удалить файлик стандартно можно так: std::remove("path"); Переименовать файлик: std::rename("from","to"); А вот копирование можно сделать ну не менее чем 30-ю разными способами И самый быстрый способ будет Си-шный. Если кому интересно скину. |
|
|
Litkevich Yuriy |
13.2.2008, 17:33
Сообщение
#2
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
скинь коль уж начал
|
|
|
Andrew Selivanov |
13.2.2008, 18:35
Сообщение
#3
|
Участник Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: 6 |
скинь коль уж начал Дык не вопрос, совершенно не вопрос... По ссылке можно найти и результаты тестирования в том числе, в этом сообщении сами исходники http://groups.google.com/group/perfo/brows...4466f69541c2e63
|
|
|
Tonal |
14.2.2008, 11:08
Сообщение
#4
|
Активный участник Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17 |
Не самый быстрый способ скопировать файл, это:
|
|
|
Litkevich Yuriy |
14.2.2008, 12:04
Сообщение
#5
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
это поди только для *nix'ов?
слово link, мозг щекочет |
|
|
Tonal |
14.2.2008, 20:02
Сообщение
#6
|
Активный участник Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17 |
Ага, для них родимых.
Ну а для винды есть аналог - CreateHardLink. Правда и там и там есть ограничение - линкуються файлы в пределах одного раздела. |
|
|
Andrew Selivanov |
15.2.2008, 16:45
Сообщение
#7
|
Участник Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: 6 |
Ага, для них родимых. Ну а для винды есть аналог - CreateHardLink. Правда и там и там есть ограничение - линкуються файлы в пределах одного раздела. Насколько я понимаю понятие hard links довольно существенно отличается от понятия copy Например, если я изменю файл оригинал... что произойдет с подлинкованными? |
|
|
Litkevich Yuriy |
15.2.2008, 17:30
Сообщение
#8
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
Хард линк, собственно сам файл, например есть каталог
/user/local на него, как и в любом другом каталоге, есть жесткая(хард) ссылка(линк) ./ так что это да! не копия! хотя сим линк примерно тоже самое, для этого случая, изменив содержимое файла и модержимое симлинка тоже изменится |
|
|
Andrew Selivanov |
15.2.2008, 17:54
Сообщение
#9
|
Участник Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: 6 |
Хард линк, собственно сам файл, например есть каталог /user/local на него, как и в любом другом каталоге, есть жесткая(хард) ссылка(линк) ./ так что это да! не копия! хотя сим линк примерно тоже самое, для этого случая, изменив содержимое файла и модержимое симлинка тоже изменится Я пробовал когда то junction points (виндовский аналог для симлинков) - просто монтировал один из хардов в папку на другом - получилось не особенно удобно, спустя несколько лет пришлось удалять, т.к. при вытаскивании хардов симлинки указывали в никуда... ляляля... фафафа... короче путаница вышла Все же в *Nix и реализация и использование как то нативнее... Кстати для интересующихся: создать хардлинк в винде можно так FSUTIL hardlink create <new filename> <existing filename> Eg : fsutil hardlink create c:\foo.txt c:\bar.txt И ссылка на описание fsutil: http://www.ss64.com/nt/fsutil.html |
|
|
Litkevich Yuriy |
15.2.2008, 18:09
Сообщение
#10
|
разработчик РЭА Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94 |
я поплогаю линки(*nix'овые) и виндовоз вещи несовместимые, у win2k (и я думаю выше) есть понятие томов, там разные куски разделов (целые каталоги) можно сшивать в виртуальные каталоги (том в их понимании), что невозможно в GNU/Linux, вещь задумана хорошая, но эксперементировать на штатной системе боюсь.
|
|
|
Текстовая версия | Сейчас: 22.12.2024, 9:33 |