Toon posts:

[C#] Het laatste element kiezen *

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Beste Goters,

Ik ben bezig met mijn C# applicatie.

dit is een stukje code waar het omgaat:
code:
1
2
3
string path = "http://example.iets/map/map/maplast";
string[] test = path.Split("/".ToCharArray());
string result = test.Last;


Dat heb ik dus geprobeerd. om de laaste element uit die split te krijgen.
Maar dit werkt niet. hoe kan ik zorgen dat dit wel werkt?

Groeten, Toetska

Acties:
  • 0 Henk 'm!

  • supreme tweaker
  • Registratie: December 2002
  • Laatst online: 28-08 01:27
Verwijderd schreef op maandag 19 januari 2009 @ 19:33:
Beste Goters,

Ik ben bezig met mijn C# applicatie.

dit is een stukje code waar het omgaat:
code:
1
2
3
string path = "http://example.iets/map/map/maplast";
string[] test = path.Split("/".ToCharArray());
string result = test.Last;


Dat heb ik dus geprobeerd. om de laaste element uit die split te krijgen.
Maar dit werkt niet. hoe kan ik zorgen dat dit wel werkt?

Groeten, Toetska
string result = test[test.length-1];
(tenminste, zo kan het in J#, zal redelijk hetzelfde zijn in C# gok ik

Burp


Acties:
  • 0 Henk 'm!

Verwijderd

Gebruik String.LastIndexOf, dat had je wel kunnen vinden als je even in een reference manual had gekeken.

Acties:
  • 0 Henk 'm!

Verwijderd

string path = "http://example.iets/map/map/maplast";
string[] test = path.Split("/".ToCharArray());
string result = test.Last();

Acties:
  • 0 Henk 'm!

  • Niemand_Anders
  • Registratie: Juli 2006
  • Laatst online: 09-07-2024

Niemand_Anders

Dat was ik niet..

Zoals Kanzlooz aangeeft is Last geen property, maar een method. Misschien voortaan iets beter de documentatie lezen.

Krijg je trouwens niet gewoon een foutmelding in Visual Studio tijdens het compileren?

If it isn't broken, fix it until it is..


Acties:
  • 0 Henk 'm!

  • CoolGamer
  • Registratie: Mei 2005
  • Laatst online: 21-09 18:08

CoolGamer

What is it? Dragons?

Niemand_Anders schreef op maandag 19 januari 2009 @ 19:42:
Zoals Kanzlooz aangeeft is Last geen property, maar een method. Misschien voortaan iets beter de documentatie lezen.
Last is noch een property, noch een method. Er is gewoon niets in System.Array met die naam.

Iets wat wel kan bijvoorbeeld is:
C#:
1
string result = test[test.Length-1];

[ Voor 8% gewijzigd door CoolGamer op 19-01-2009 19:49 ]

¸.·´¯`·.¸.·´¯`·.¸><(((º>¸.·´¯`·.¸><(((º>¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸<º)))><¸.·´¯`·.¸.·´¯`·.¸.·´¯`·.¸


Acties:
  • 0 Henk 'm!

Verwijderd

TheCoolGamer schreef op maandag 19 januari 2009 @ 19:46:
[...]

Last is noch een property, noch een method. Er is gewoon niets in System.Array met die naam.

Iets wat wel kan bijvoorbeeld is:
C#:
1
string result = test[test.length-1];
.Last() werkt hier prima icm met linq.

Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
TheCoolGamer schreef op maandag 19 januari 2009 @ 19:46:
[...]

Last is noch een property, noch een method. Er is gewoon niets in System.Array met die naam.

Iets wat wel kan bijvoorbeeld is:
C#:
1
string result = test[test.length-1];
Maar zoals Cheatah al aangeeft wil hij waarschijnlijk gewoon het laatste deel van de url hebben en kan hij dus beter String.LastIndexOf en String.Substring gebruiken
Verwijderd schreef op maandag 19 januari 2009 @ 19:49:
[...]
.Last() werkt hier prima icm met linq.
Dan is Last een extension method met iets als
C#:
1
2
3
4
public static T Last<T>( this T[] array )
{
    return array[ array.Length -1 ];
}

of eventueel iets met een enumerable. Zeker als dat laatste het geval is, is het zeg maar "sub-optimaal".

edit:
Het is idd een extension method op Enumerable. http://msdn.microsoft.com...linq.enumerable.last.aspx. Dat betekend dus dat hij eerst over alle elementen gaat itereren voordat hij het laatste element terug geeft. Terwijl je in een array natuurlijk gewoon op index kunt pakken.

[ Voor 45% gewijzigd door Woy op 19-01-2009 19:57 ]

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dankjewel Supreme Tweaker.

Maar C# is Case Sensitieve:P

Acties:
  • 0 Henk 'm!

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 22:06

TeeDee

CQB 241

* TeeDee vraagt zich af in welke IDE Toetska aan het ontwikkelen is.

Heart..pumps blood.Has nothing to do with emotion! Bored


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
rwb schreef op maandag 19 januari 2009 @ 19:50:
[...]

Maar zoals Cheatah al aangeeft wil hij waarschijnlijk gewoon het laatste deel van de url hebben en kan hij dus beter String.LastIndexOf en String.Substring gebruiken
Of je gebruikt de classes die er voor bedoeld zijn:

C#:
1
2
System.Uri u = new System.Uri("http://www.domain.nl/blah/foo/bar");
string result = u.Segments[u.Segments.Length - 1];


Scheelt weer splitten e.d. :P

[ Voor 38% gewijzigd door RobIII op 19-01-2009 22:28 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
RobIII schreef op maandag 19 januari 2009 @ 22:27:
[...]
Of je gebruikt de classes die er voor bedoeld zijn:

C#:
1
2
System.Uri u = new System.Uri("http://www.domain.nl/blah/foo/bar");
string result = u.Segments[u.Segments.Length - 1];
Dat is natuurlijk nog beter.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”

Pagina: 1