|
|
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
В катаалоге есть файлы типа price_20_06_2006.xls или price_2006_06_02.xls, ну и другие в таком роде - т.е. все вида priceххххххх.xls А нужно перебрав все определить тот, что "СВЕЖЕЕ" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 13:48 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Как пробовал, что не получилось ? Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 14:03 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Да как. Беру FindFirst рекурсивно кручу и заганяю результаты в грид. Затем шерстим по гриду и выбираем файл с наибольшей датой. Но потом подумал, что зачем с гридом возиться. Просто нужно искомое определять при переборе -ведь мне нужен только 1 файл! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 14:32 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Правильно мыслишь - сделай без грида Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 14:34 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 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. Вот то что создал, но чего-то не тот файл выдает ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 14:52 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION Z ты на паскале пишешь что ли ? :) я бы так написал: Код: plaintext 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. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:07 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Блин, Outlook все перенес :( Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:09 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас Барабасты на паскале пишешь что ли ? :) Дак это же я - ну типа перешел с Delphi на C. Думаю так же, а пишу другими буквами. А последний твой код сейчас проверим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:30 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Код: plaintext а как там с объявлением ScanSubFolders в FindDir ? И что нужно 2 ф-и, чтобы сработало задуманное? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:40 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас БарабасБлин, Outlook все перенес :( [src c++]void FindDir(AnsiString StartFolder, AnsiString Mask, int &MaxTime, AnsiString &MaxFileName) { StartFolder=IncludeTrailingBackslash(StartFolder); TSearchRec sr; for(bool r=FindFirst(StartFolder+"*.*", faAnyFile, sr);!r;r=FindNext(sr)) { if ((sr.Attr & faDirectory) && ScanSubFolders) FindDir(StartFolder+sr.Name,Mask,MaxDate,MaxFileName); else { if (MatchesMask(sr.Name, Mask) && sr.Time > MaxTime) MaxFileName = StartFolder + sr.Name; } } FindClose(sr); } src] MaxTime == MaxDate :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:42 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION Zнужно 2 ф-и, чтобы сработало задуманное? ну у тебя рекурсивная функция возвращает значение ... мне кажется, удобнее вызвать ее отдельно Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:46 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION ZMaxTime == MaxDate :) писал "из мозга", не проверял :) Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:46 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Дает тот же результат, что и моя. Т.е. выдает файл не самой последней даты! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:49 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Обнаружилось, что ф-я в результате выдает последний файл перебора, а не файл с последней датой. Что там поповоду && sr.Time > MaxTime - почему не работает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:54 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Эх, пришлось запустить "стройку" :)) Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 15:58 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Блин у нас провайдер целый час на профилактике был. И в принципе я уже и сам сделал - типа по паскалевским мотивам: Код: plaintext 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. Но смотрю и твой код изменился ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 17:25 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Возможно чуть проще проверять только дату создания, а не анализировать имя файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 17:54 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Что то только не работает поиск в SubFolders, а твой вообще в цикле! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:05 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION Zвообще в цикле кто в цикле ? на этот раз я все проверил - работает Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:06 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
niknameВозможно чуть проще проверять только дату создания, а не анализировать имя файла. А на счет этого скажу, что в каталоге полно ещё всякого бреда. А нужен последний и з заданной маски. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:12 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас кто в цикле ? на этот раз я все проверил - работает В цикле поик в SubFolders, т.е. когда ScanSubFolders = 1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:14 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION ZВ цикле поик в SubFolders, т.е. когда ScanSubFolders = 1 а ну дак там надо вот так: Код: plaintext 1. 2. 3. 4. 5. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:20 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Опять аутлук перенес ... ну да разберешься Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:21 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас а ну дак там надо вот так: Код: plaintext 1. 2. 3. 4. 5. Posted via ActualForum NNTP Server 1.3 А теперь как и уменя не выполняется поиск в SubFolders - т.е. при обнаружении подкаталога обход вываливается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:29 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Рекурсия прекращается т.к. при рекурсивном вызове поиска в подкаталоге StartFolder+sr.Name = "" - NULL! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:39 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:50 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Если делаю обычный поиск файлов по маске, то в подкаталоге ищет. Ну типа вот так Код: plaintext 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. Ну ShowMessage(StartFolder+SR.Name); - это так для пробы, а не красоты ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:50 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
nikname Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Да программеры, а особенно сишники очень лаконичны, но чтоб на столько чтоб комментарий не вставить ... мы же на ФОРУМЕ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 18:53 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION Z SZ> Рекурсия прекращается т.к. при рекурсивном вызове поиска SZ> в подкаталоге StartFolder+sr.Name = "" - NULL! Тема что-то ты врешь или путаешь Код: plaintext 1. 2. 3. 4. 5. 6. 7. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 19:06 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION Z Да программеры, а особенно сишники очень лаконичны, но чтоб на столько чтоб комментарий не вставить ... мы же на ФОРУМЕ Я имел в виду следующее: 1. судя по условиям перебор подкаталогов не нужен 2. Если операционка не FAT то последний файл можно найти по маске \\path...\\price*.xls и дате создания, что очевидно эффективнее, чем разбирать имя файла вручную ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2006, 19:13 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
niknameЯ имел в виду следующее: 1. судя по условиям перебор подкаталогов не нужен ... Не нужно, но сделаю ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 10:41 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас что-то ты врешь или путаешь Сейчас ещё раз проверим. А что такое ConsoleOut - это не win32 api, а что же ? ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 10:47 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION ZА что такое ConsoleOut да просто вывод на консоль, функция-то пустяковая, а для отладки полезно, сам напиши Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 10:51 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас W:\Фотографии\Наши\Цифровые\ W:\Фотографии\Наши\Цифровые\111111\ W:\Фотографии\Наши\Цифровые\123\ ... так что все в порядке Опять Вы Карабас сделали НЕполную проверку. ДА в подкаталоги действительно заглядывает, НО при встрече файла из "маски" - ничего не находит. Давай выясним истину с использованием каких-то файлов. Я думаю это не сложно проветиь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 10:53 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION ZДавай выясним истину с использованием каких-то файлов вставил еще вывод на консоль: Код: plaintext 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. Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 11:04 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Ладно согласен, что ф-я находит файлы по маске и даже правильно определает maxfile, только вот у меня в момент присвоения AnsiString st = FFind(SRCDir, fmask, true, MaxTime); выдает st == "", а в твоей должен признать дает правильный ответ. Неужели нужно сделать мою ф-ю как void , а передавать результат как AnsiString &MaxFileName И действительно сделал так: Код: plaintext 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. А так работает ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 11:28 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
SCORPION Z я ж тебе говорил - у тебя рекурсивная функция, возвращающая результат, у нее в каждой рекурсии свой результат надо либо учитывать это в верхних уронях рекурсии, либо делать, как сделал я - т.е. завести внешнюю для функции переменную, которую менять только в нужных случаях Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 11:46 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Не столько головной боли по алгоритму, сколько по передаче параметров ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 11:46 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Карабас Барабас SCORPION Z я ж тебе говорил - у тебя рекурсивная функция, возвращающая результат, у нее в каждой рекурсии свой результат надо либо учитывать это в верхних уронях рекурсии, либо делать, как сделал я - т.е. завести внешнюю для функции переменную, которую менять только в нужных случаях Истину говоришь! Тема закрыта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.06.2006, 12:53 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Вопрос такой: в структуре _finddata_t атрибут attrib для файлов =32 а для папок =16? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 10:47 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
AndrewKolВопрос такой: в структуре _finddata_t атрибут attrib для файлов =32 а для папок =16? io.h /* File attribute constants for _findfirst() */ #define _A_NORMAL 0x00 /* Normal file - No read/write restrictions */ #define _A_RDONLY 0x01 /* Read only file */ #define _A_HIDDEN 0x02 /* Hidden file */ #define _A_SYSTEM 0x04 /* System file */ #define _A_SUBDIR 0x10 /* Subdirectory */ #define _A_ARCH 0x20 /* Archive file */ Проверяй 4-й бит (с нуля) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 11:02 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Akh AndrewKolВопрос такой: в структуре _finddata_t атрибут attrib для файлов =32 а для папок =16? Проверяй 4-й бит (с нуля) Спасибо. Задача несколько сложнее перебрать все файлы в папке, включая подпапки. void all_files(CString dir) { ... cout<<Full _path_to_file<<endl; ... } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 12:01 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
AndrewKolСпасибо. Задача несколько сложнее перебрать все файлы в папке, включая подпапки. void all_files(CString dir) { ... cout<<Full _path_to_file<<endl; ... } Тут же ее решили. Даже тему закрыли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 12:11 |
|
||
|
Поиск фала с последней датой создания
|
|||
|---|---|---|---|
|
#18+
Akh AndrewKolСпасибо. Задача несколько сложнее перебрать все файлы в папке, включая подпапки. void all_files(CString dir) { ... cout<<Full _path_to_file<<endl; ... } Тут же ее решили. Даже тему закрыли. 1)На сколько я понял это не есть код для MSVS7 буду переделывать 2)мне нужны просто все файлы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2006, 12:33 |
|
||
|
|

start [/forum/topic.php?all=1&fid=57&tid=2030891]: |
0ms |
get settings: |
5ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
139ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 206ms |
| total: | 430ms |

| 0 / 0 |
