|
If you are using C#2.0 or later you can use inbuilt ftp functionality (if not there are libraries available). Google and MSDN will both give you what you are looking for with code samples.
Good luck!
At university studying Software Engineering - if i say this line to girls i find they won't talk to me
Dan
|
|
|
|
|
Your question makes no sense.
There's no association between a listening socket and a folder.
What are you trying to ask?
Mark
Mark Salsbery
Microsoft MVP - Visual C++
|
|
|
|
|
Hello everyone,
I have a string array, but may have duplicate strings. Any built-in or smart way to remove the duplicate ones and generate a string array contains only unique ones?
For example, the input array is {"abc", "bcd", "abc"}, the unique output array is {"abc", "bcd"}.
thanks in advance,
George
|
|
|
|
|
from what I know there's no such thing and you'd have to iterate thru and pick the unique ones manually. it's not that difficult you know
|
|
|
|
|
Thanks Igor,
Good to know .Net does not provide such a class.
regards,
George
|
|
|
|
|
I dunno why a set class is not included, but it's easy to write one. Just have a list inside, and check if an entry exists before adding it.
Christian Graus
Driven to the arms of OSX by Vista.
|
|
|
|
|
Thanks Christian,
What do you mean "have a list inside"? I am talking about string array, I am not sure where is the list you are talking about. Show some pseudo code?
regards,
George
|
|
|
|
|
public class set<t>
{
private List<t> theList;
public bool Add(T item)
{
if (theList.Contains(item)) return false;
theList.Add(item);
return true;
}
}
This is the start of a set class, a container that only contains one of any object.
Christian Graus
Driven to the arms of OSX by Vista.
|
|
|
|
|
Thanks Christian,
I like your idea. I am surprised why there is no built-in Set class in .Net.
regards,
George
|
|
|
|
|
May be Array.FindAll can help you. Check out MSDN for it.
Another way could be:
1. Create a list/hashtable. Then loop through the array.
2. Check if the element exists in the list/hashtable.
3. If it does its a duplicate value. Remove it from array.
4. If it doesnt add it to the list/hashtable.
C isn't that hard: void (*(*f[])())() defines f as an array of unspecified size, of pointers to functions that return pointers to functions that return void
"Always program as if the person who will be maintaining your program is a violent psychopath that knows where you live." - Martin Golding
|
|
|
|
|
Hi d@nish,
I have studied related MSDN page about Array.FindAll, but I do not think it could help me in my solution. Do you have any pesudo code to show your idea of using Array.FindAll to make a unique string array?
regards,
George
|
|
|
|
|
You have to iteretae it.You can use some generic for that
Cheers!!
Brij
|
|
|
|
|
Hi Brij,
"some generic for that" -- do you have some more words on this? Or some pseudo code?
regards,
George
|
|
|
|
|
List<string> newArray = new List<string>();
foreach (string token in yourArray)
{
if (!newArray.Contains(token))
{
newArray.Add(token);
}
}
|
|
|
|
|
Thanks Igor,
I like your solution!
regards,
George
|
|
|
|
|
no worries
|
|
|
|
|
Make a custom function,In which create an a generic as taken below a list.
List<string> UnqueList=new List<string>();
for (int i = 0; i < strarr.Length; i++)
{
if(!UnqueList.Exists(strarr[0]))
{
UnqueList.Add(strarr[0]);
}
}
Now you'll the list conatining unique elements.You can conert it to array too as
UnqueList.ToArray();
Cheers!!
Brij
|
|
|
|
|
Thanks Brij!
The "generic" you mean List<string>?
regards,
George
|
|
|
|
|
Generic does means only List.We have some more like Dictionary,SortedList,Queue,Stack but list suits your requirement best.
Cheers!!
Brij
|
|
|
|
|
Thanks for your clarification, Brij!
regards,
George
|
|
|
|
|
If I'm not mistaken you can use LINQ to select unique values.
|
|
|
|
|
...yes, assuming he's using .net 3+
|
|
|
|
|
Yes, I have to use .Net 3.0, not .Net 3.5. Any ideas for .Net 3.0 based solution? I think LINQ belongs to .Net 3.5, not .Net 3.0?
regards,
George
|
|
|
|
|
LINQ is good, but I have to use .Net 3.0, not .Net 3.5. Any ideas for .Net 3.0 based solution?
regards,
George
|
|
|
|
|
You can use the Distinct method(an Extention Method) if you are using C#3.0 and the implementation code is quit simple, such as:
string[] strs = new string[] { "abc", "bcd", "abc" };
IEnumerable<string> newStrs = strs.Distinct();
Hope this will help.
LuckyBoy
|
|
|
|