I'm using filesystem.getfiles - and so far it's working correctly *however*
I'd sure like to be able to pass it, as the last parameter, the extensions
(plural) for which I'm looking.
I assumed that "*.exe, *.dll" for example would work but it seems to not
like that syntax. Would someone correct my misinformation and give me a
way to pass more than a single pattern to that last parameter??
Thanks //al 11 12430
"al jones" <al**********@shotmail.com> schrieb I'm using filesystem.getfiles - and so far it's working correctly *however* I'd sure like to be able to pass it, as the last parameter, the extensions (plural) for which I'm looking.
I assumed that "*.exe, *.dll" for example would work but it seems to not like that syntax. Would someone correct my misinformation and give me a way to pass more than a single pattern to that last parameter??
It is not possible to pass multiple extensions. Get all files and filter
them by extension in a loop.
I don't see the relation to the VB.Net language. Maybe one of the Framework
groups is the better place to ask:
microsoft.public.dotnet.framework.*
You'll benefit from the none-VB'ers, too.
Armin
If you're using VB2005,
My.Computer.FileSystem.GetFiles(...)
Allows you to specify multiple patterns.
--
-C. Moya www.cmoya.com
"Armin Zingler" <az*******@freenet.de> wrote in message microsoft.public.dotnet.framework.* You'll benefit from the none-VB'ers, too.
Sorta ironic you say this... considering the feature he seeks AFAIK is only
available in VB (2005) via
My.Computer.FileSystem.GetFiles(...)
--
-C. Moya www.cmoya.com
On the other hand, if you're using VB2003, then you can't use
My.Computer.FileSystem.GetFiles().
In which case you can either:
1) Get all the files (*.*) and loop through them yourself recursively using
VB's Like operator (very handly little known comparison operator).
For Each file As String in filesAry
For Each pattern As String in patternsAry
If File.GetFileName(file) Like pattern Then
'do something
End If
Next pattern
Next file
2) Call GetFiles multiple times each with a different pattern. I would
actually think #1 above is the faster option.
--
-C. Moya www.cmoya.com
"CMM" <cm*@nospam.com> wrote in message
news:%2****************@tk2msftngp13.phx.gbl... If you're using VB2005, My.Computer.FileSystem.GetFiles(...) Allows you to specify multiple patterns.
-- -C. Moya www.cmoya.com
On Mon, 13 Feb 2006 16:40:44 -0500, CMM wrote: If you're using VB2005, My.Computer.FileSystem.GetFiles(...) Allows you to specify multiple patterns.
I got a chuckle out of your response to Armin - I assumed that getfiles
would be available across the family of languages but you're right I *am*
using vb2005.
I must be being really dense, though, can you explain how to specify those
multiple patterns? The tooltip associated with getfiles says that this
item is a ParamArray wildcards() as string. I've tried "*.exe;*.dll" which
returned nothing and thinking that This should be an array
{"*.exe","*.dll"} which the ide complains about ...
Another response to a similar questions suggests making two passes one for
each extension - which is doable, but the time this takes on a large
directory is long to begin with, doubling or tripling it would be
prohibitive. Suggestions?
And thanks to both of you //al
A "paramarray" means you can specify parameters *inline* for infinity pretty
much
MyProc(param1,param2,param3,param4, ...) You can also pass them as a
singular array if you want. This is how you use the getfiles function:
....
Dim files As ObjectModel.ReadOnlyCollection(Of String) = _
My.Computer.FileSystem.GetFiles("C:\Temp",
FileIO.SearchOption.SearchAllSubDirectories, "*.exe", "*.dll")
or
Dim files2 As ObjectModel.ReadOnlyCollection(Of String) = _
My.Computer.FileSystem.GetFiles("C:\Temp",
FileIO.SearchOption.SearchAllSubDirectories, New String() {"*.exe",
"*.dll"})
P.S.
ObjectModel.ReadonlyCollection is in the System.Collections namespace.
--
-C. Moya www.cmoya.com
"al jones" <al**********@shotmail.com> wrote in message
news:19*****************************@40tude.net... On Mon, 13 Feb 2006 16:40:44 -0500, CMM wrote:
If you're using VB2005, My.Computer.FileSystem.GetFiles(...) Allows you to specify multiple patterns.
I got a chuckle out of your response to Armin - I assumed that getfiles would be available across the family of languages but you're right I *am* using vb2005.
I must be being really dense, though, can you explain how to specify those multiple patterns? The tooltip associated with getfiles says that this item is a ParamArray wildcards() as string. I've tried "*.exe;*.dll" which returned nothing and thinking that This should be an array {"*.exe","*.dll"} which the ide complains about ...
Another response to a similar questions suggests making two passes one for each extension - which is doable, but the time this takes on a large directory is long to begin with, doubling or tripling it would be prohibitive. Suggestions?
And thanks to both of you //al
I think the VB.net developers had to go to school to learn how to make
things as convoluted as possible.
GalenS
"CMM" <cm*@nospam.com> wrote in message
news:er**************@TK2MSFTNGP15.phx.gbl... A "paramarray" means you can specify parameters *inline* for infinity pretty much MyProc(param1,param2,param3,param4, ...) You can also pass them as a singular array if you want. This is how you use the getfiles function:
...
Dim files As ObjectModel.ReadOnlyCollection(Of String) = _ My.Computer.FileSystem.GetFiles("C:\Temp", FileIO.SearchOption.SearchAllSubDirectories, "*.exe", "*.dll")
or
Dim files2 As ObjectModel.ReadOnlyCollection(Of String) = _ My.Computer.FileSystem.GetFiles("C:\Temp", FileIO.SearchOption.SearchAllSubDirectories, New String() {"*.exe", "*.dll"})
P.S. ObjectModel.ReadonlyCollection is in the System.Collections namespace.
-- -C. Moya www.cmoya.com "al jones" <al**********@shotmail.com> wrote in message news:19*****************************@40tude.net... On Mon, 13 Feb 2006 16:40:44 -0500, CMM wrote:
If you're using VB2005, My.Computer.FileSystem.GetFiles(...) Allows you to specify multiple patterns.
I got a chuckle out of your response to Armin - I assumed that getfiles would be available across the family of languages but you're right I *am* using vb2005.
I must be being really dense, though, can you explain how to specify those multiple patterns? The tooltip associated with getfiles says that this item is a ParamArray wildcards() as string. I've tried "*.exe;*.dll" which returned nothing and thinking that This should be an array {"*.exe","*.dll"} which the ide complains about ...
Another response to a similar questions suggests making two passes one for each extension - which is doable, but the time this takes on a large directory is long to begin with, doubling or tripling it would be prohibitive. Suggestions?
And thanks to both of you //al
I don't see how.
Doesn't get much simpler than usage of that function... and intellisense
guides you the whole way... though I guess it does look wordy.
--
-C. Moya www.cmoya.com
"CMM" <cm*@nospam.com> schrieb On the other hand, if you're using VB2003, then you can't use My.Computer.FileSystem.GetFiles().
In which case you can either:
1) Get all the files (*.*) and loop through them yourself recursively using VB's Like operator (very handly little known comparison operator).
For Each file As String in filesAry For Each pattern As String in patternsAry If File.GetFileName(file) Like pattern Then
I'd prefer
select case io.path.getextension.tolower
case ".exe", ".dll" 'or without dot (never know by heart)
msgbox "good file"
case
msgbox "bad file"
end seelct
:)
Armin
"CMM" <cm*@nospam.com> schrieb "Armin Zingler" <az*******@freenet.de> wrote in message microsoft.public.dotnet.framework.* You'll benefit from the none-VB'ers, too.
Sorta ironic you say this... considering the feature he seeks AFAIK is only available in VB (2005) via My.Computer.FileSystem.GetFiles(...)
They'd better spend the time putting it into the framework... ;-)
Armin
> I'd prefer ... <snip>
Sure. Though, my method accomodates more complex search patterns akin to a
real search. You might not necessarily just want to search for extensions.
Forward thinking, man. Forward thinking.
--
-C. Moya www.cmoya.com This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: Lucas Fletcher |
last post by:
Hi All,
I've searched the web for an article explaining the many tradeoffs between
storing your XML in a database vs the filesystem but I haven't really found
anything of note.
This is the...
|
by: Ben Fidge |
last post by:
Hi
What is the most efficient way to gather a list of files
under a given folder recursively with the ability to
specify exclusion file masks?
For example, say I wanted to get a list of all...
|
by: Tom Scales |
last post by:
OK, I admit, I am not a VB.NET expert and am still learning, but have run
into an annoying problem. I'm writing a program that has to search the file
system and therefore processes large numbers...
|
by: Yves |
last post by:
Hello,
I have a little question.
I want to make a small app that counts all the files located in a specific
directory (chosen via a FolderBrowserDialog by a user). The question is: is
there a...
|
by: Starbuck |
last post by:
Hi
When the routine below is run it gets to the line - Dim fileEntries As
String() = Directory.GetFiles(tString) and then freezes, there is no errors
etc, the program just stops responding. The...
|
by: Tamir Khason |
last post by:
According guidlines of ASP.NET security with medium trust level I should able
to use file system IO with my virtual directory, but actual recieve error
500 (not appears with full trust level)...
|
by: graphicsxp |
last post by:
Hi,
I need to find recursively all the files which have extension .mdb so I
did that:
files = My.Computer.FileSystem.GetFiles("C:\Databases",
FileIO.SearchOption.SearchAllSubDirectories,...
|
by: |
last post by:
Hi all,
I want to create a method that does the following:
1) Programmatically instantiate a new XmlDataSource control
2) For each file in a named directory, make a "FileSystemItem" element
3)...
|
by: Michael Jackson |
last post by:
In my .NET 2.0 VS 2005 VB application, I'm using Directory.GetFiles(path) to
get all the files in the directory. However, I'm getting an error regarding
"Illegal character in Path", even though I...
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: emmanuelkatto |
last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud.
Please let me know.
Thanks!
Emmanuel
|
by: BarryA |
last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
|
by: nemocccc |
last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
|
by: Sonnysonu |
last post by:
This is the data of csv file
1 2 3
1 2 3
1 2 3
1 2 3
2 3
2 3
3
the lengths should be different i have to store the data by column-wise with in the specific length.
suppose the i have to...
|
by: Hystou |
last post by:
There are some requirements for setting up RAID:
1. The motherboard and BIOS support RAID configuration.
2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers,...
|
by: Hystou |
last post by:
Overview:
Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
| |