webForumDet fria alternativet

Splitta sträng, c#

.NET

3 svar · 312 visningar · startad av erka

Medlem sedan dec. 19996 522 inlägg
Frågan#1

Hej!

Jag har en sträng som jag inte vet längde på, det enda jag vet är att om den är över 8000 tecken, ska jag splitta upp den i två strängar. Men jag kan inte lyckas få det att fungera. Vad är fel i detta

string tmpContent = "";
string tmpContent2 = "";

if (this.ContentText.Length > 8000)
{
int tmpLenght = this.ContentText.Lenght;
tmpContent = this.ContentText.Substring(0,7999);
tmpContent2 = this.ContentText.Substring(8000,tmpLenght);
}
else
{
tmpContent = this.ContentText;
}

får felmeddelandet
System.ArgumentOutOfRangeException: Index and length must refer to a location within the string. Parameter name: length
tacksam

Medlem sedan apr. 2004778 inlägg
#2

Prova
<code>
tmpContent2 = this.ContentText.Substring(8000,tmpLenght-8000);
</code>
Andra variablen i Substring är length och nu försöker du ta ut en substräng på tmpLength efter från index 8000.

Medlem sedan dec. 19996 522 inlägg
#3

Fick det att fungera, tack för tippset

Medlem sedan maj 20021 466 inlägg
#4

Length stavas med th.

this.ContentText.Substring(8000) fungerar lika bra för att få alla tecken efter 8000:e.

248 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
118 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)