Ошибка в библиотеке?
От: s_aa Россия  
Дата: 10.09.20 11:47
Оценка:
Directory.EnumerateFiles(@"c:\Folder", "*.sql", SearchOption.AllDirectories)


Кроме файлов *.sql, попадают *.sqlite. .NET 4.8.
Кстати в Core работает нормально.
Жизнь не обязана доставлять удовольствие. Достаточно отсутствия страданий.
Re: Ошибка в библиотеке?
От: ltc  
Дата: 10.09.20 11:50
Оценка:
Здравствуйте, s_aa, Вы писали:

_>
_>Directory.EnumerateFiles(@"c:\Folder", "*.sql", SearchOption.AllDirectories)
_>


_>Кроме файлов *.sql, попадают *.sqlite. .NET 4.8.

_>Кстати в Core работает нормально.

RTFM

When you use the asterisk wildcard character in a searchPattern such as "*.txt", the number of characters in the specified extension affects the search as follows:

If the specified extension is exactly three characters long, the method returns files with extensions that begin with the specified extension. For example, "*.xls" returns both "book.xls" and "book.xlsx".
In all other cases, the method returns files that exactly match the specified extension. For example, "*.ai" returns "file.ai" but not "file.aif".

Re[2]: Ошибка в библиотеке?
От: s_aa Россия  
Дата: 10.09.20 11:57
Оценка: +3
ltc>

ltc>When you use the asterisk wildcard character in a searchPattern such as "*.txt", the number of characters in the specified extension affects the search as follows:

ltc>If the specified extension is exactly three characters long, the method returns files with extensions that begin with the specified extension. For example, "*.xls" returns both "book.xls" and "book.xlsx".
ltc>In all other cases, the method returns files that exactly match the specified extension. For example, "*.ai" returns "file.ai" but not "file.aif".


Хрень какая-то . Почему такой особенный случай с 3-мя символами в расширении? В Core работает ожидаемым способом.
Жизнь не обязана доставлять удовольствие. Достаточно отсутствия страданий.
Re[3]: Ошибка в библиотеке?
От: Je suis Mamut  
Дата: 10.09.20 12:02
Оценка:
ltc>>

ltc>>When you use the asterisk wildcard character in a searchPattern such as "*.txt", the number of characters in the specified extension affects the search as follows:

ltc>>If the specified extension is exactly three characters long, the method returns files with extensions that begin with the specified extension. For example, "*.xls" returns both "book.xls" and "book.xlsx".
ltc>>In all other cases, the method returns files that exactly match the specified extension. For example, "*.ai" returns "file.ai" but not "file.aif".


_>Хрень какая-то . Почему такой особенный случай с 3-мя символами в расширении? В Core работает ожидаемым способом.


из-за досовского лимита 8.3 на имена файлов?
Re[2]: Ошибка в библиотеке?
От: Kolesiki  
Дата: 10.09.20 13:37
Оценка:
Здравствуйте, ltc, Вы писали:

ltc>If the specified extension is exactly three characters long...


Ха-ха!! Всё ясно... "бейсик головного мозга" архитектора. Если массив — то a[10]. Если расширение — то ".xyz"; Других сущностей просто не бывает.
Капец, конечно... ладно джуны накодерастили втихоря, но если так проектировали библиотеку?!!!! Это ДНО, товарищи!
Re[3]: Ошибка в библиотеке?
От: Ночной Смотрящий Россия  
Дата: 10.09.20 18:52
Оценка:
Здравствуйте, Kolesiki, Вы писали:

K>Капец, конечно... ладно джуны накодерастили втихоря, но если так проектировали библиотеку?!!!! Это ДНО, товарищи!


Дно это не знать, что там унутре неонка win32, а алгоритм этот пришел еще со времен ранних версий win95.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[3]: Ошибка в библиотеке?
От: Pzz Россия https://github.com/alexpevzner
Дата: 10.09.20 19:13
Оценка:
Здравствуйте, s_aa, Вы писали:

_>Хрень какая-то . Почему такой особенный случай с 3-мя символами в расширении? В Core работает ожидаемым способом.


В память об операционной системе MS-DOS
Re[4]: Ошибка в библиотеке?
От: Pzz Россия https://github.com/alexpevzner
Дата: 10.09.20 19:16
Оценка: +1
Здравствуйте, Ночной Смотрящий, Вы писали:

K>>Капец, конечно... ладно джуны накодерастили втихоря, но если так проектировали библиотеку?!!!! Это ДНО, товарищи!


НС>Дно это не знать, что там унутре неонка win32, а алгоритм этот пришел еще со времен ранних версий win95.


Ну вообще-то, win95 имела основания так делать, чтобы досовские программы не сошли с ума. И win32 имела основания так делать, микрософт всегда достаточно трепетно относился к обратной совместимости своего API. А вот в C# могли бы этот исторический артефакт и не тащить, там не было груза обратной совместимости.
Re[5]: Ошибка в библиотеке?
От: Ночной Смотрящий Россия  
Дата: 10.09.20 19:51
Оценка: 4 (1)
Здравствуйте, Pzz, Вы писали:

Pzz>Ну вообще-то, win95 имела основания так делать, чтобы досовские программы не сошли с ума. И win32 имела основания так делать, микрософт всегда достаточно трепетно относился к обратной совместимости своего API.


Об этом и речь.

Pzz> А вот в C# могли бы этот исторический артефакт и не тащить, там не было груза обратной совместимости.


Нет, не могли, .NET FW в данном случае выступает тонкой прослойкой. А вот в кроссплатформенном Core уже можно было на совместимость забить.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[6]: Ошибка в библиотеке?
От: Pzz Россия https://github.com/alexpevzner
Дата: 10.09.20 20:07
Оценка: +1
Здравствуйте, Ночной Смотрящий, Вы писали:

Pzz>> А вот в C# могли бы этот исторический артефакт и не тащить, там не было груза обратной совместимости.


НС>Нет, не могли, .NET FW в данном случае выступает тонкой прослойкой. А вот в кроссплатформенном Core уже можно было на совместимость забить.


Ну, можно было бы сделать прослойку и чуть потолще, устранив совсем уж вопиющие идиотизмы win32
Re[7]: Ошибка в библиотеке?
От: Ночной Смотрящий Россия  
Дата: 10.09.20 20:43
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Ну, можно было бы сделать прослойку и чуть потолще, устранив совсем уж вопиющие идиотизмы win32


И породив несовместимость без особой нужды? .NET изначально позиционировался как платформа для переписывания плюсовых DCOM серверов и лишь потом перерос в нечто большее.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[8]: Ошибка в библиотеке?
От: Pzz Россия https://github.com/alexpevzner
Дата: 10.09.20 21:00
Оценка:
Здравствуйте, Ночной Смотрящий, Вы писали:

НС>И породив несовместимость без особой нужды? .NET изначально позиционировался как платформа для переписывания плюсовых DCOM серверов и лишь потом перерос в нечто большее.


Несовместимость с чем?

Особое поведение для 3-буквенных расширений нужно только для кода, написанного когда-то для MS-DOS. Нонешнее поколение, как мы видим, вообще не понимает, о чем идет речь. И разумеется, на C# для MS-DOS никто никогда не писал.
Re[9]: Ошибка в библиотеке?
От: Ночной Смотрящий Россия  
Дата: 10.09.20 21:02
Оценка:
Здравствуйте, Pzz, Вы писали:

НС>>И породив несовместимость без особой нужды? .NET изначально позиционировался как платформа для переписывания плюсовых DCOM серверов и лишь потом перерос в нечто большее.


Pzz>Несовместимость с чем?


C win32

Pzz>Особое поведение для 3-буквенных расширений нужно только для кода, написанного когда-то для MS-DOS. Нонешнее поколение, как мы видим, вообще не понимает, о чем идет речь.


История происходила в 99 году.
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re[4]: Ошибка в библиотеке?
От: Sharov Россия  
Дата: 12.09.20 10:57
Оценка:
Здравствуйте, Je suis Mamut, Вы писали:

JSM>из-за досовского лимита 8.3 на имена файлов?


Какое отношение дос к семейству NT имеет?
Кодом людям нужно помогать!
Re[5]: Ошибка в библиотеке?
От: Je suis Mamut  
Дата: 12.09.20 15:54
Оценка:
JSM>>из-за досовского лимита 8.3 на имена файлов?
S>Какое отношение дос к семейству NT имеет?

груз совместимости?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.