SebbeJ Medlem sedan dec. 2004 71 inlägg Frågan 26 aug. 2005 09:47 #1 Halloj, hittade en liten funktion som jag vill ha hjälp med att översätta till c#. Är rätt mkt grönjöling på c# så att jag skulle klara att ersätta ngt från vb till c# ser jag som relativt svårt...
Därför ber jag om er hjälp!
Koden hittas på pellesoft:
http://www.pellesoft.se/communicate/tips/tips.aspx?tid=1881
Tack på förhand för all eventuell hjälp!
Mc Fetto Medlem sedan nov. 2002 2 355 inlägg Gör det här:
http://www.developerfusion.co.uk/utilities/convertvbtocsharp.aspx r: gjorde en redigering så det blev korrekt c# kod:
bool PersonnummerKoll(string Personnummer)
{
object[] Siffra = new object[9];
string HelNummer;
int Resultat;
string StrResultat;
object i;
i = InStr(Personnummer, "-");
if (i == 7) {
Personnummer = Mid(Personnummer, 1, 6) + Mid(Personnummer, 8, 11);
}
if (Len(Personnummer) != 10) {
return false;
return null;
}
for (int i = 1; i <= 9; i++) {
Siffra(i) = Mid(Personnummer, i, 1);
}
for (int i = 0; i <= 9; i += 2) {
Siffra(i + 1) = Siffra(i + 1) * 2;
}
for (int i = 1; i <= 9; i++) {
if (Siffra(i) >= 10) {
Siffra(i) = Val(Mid(Siffra(i), 1, 1)) + Val(Mid(Siffra(i), 2, 1));
}
Resultat += (Siffra(i));
}
StrResultat = Resultat;
i = Mid(Personnummer, Len(Personnummer), 1);
if (10 - Val(Mid(StrResultat, Len(StrResultat), 1)) == i) {
return true;
} else {
return false;
}
}
A asmodie Medlem sedan jan. 2004 501 inlägg det blir nästan copy paste på denna kod snutt. Tackar.
SebbeJ Medlem sedan dec. 2004 71 inlägg Jag får inte det att fungera, kompilatorn klagar på att den inte hittar InStr, Len och Mid, vilket namespace måste jag importera?
Har testat med System.Text och det ger ingen nämnvärd skillnad :/
UlfT Medlem sedan maj 2001 8 027 inlägg Det finns något särskilt VisualBasic-namespace, även om jag har glömt det kompletta namnet för det. Annars finns det ju medlemsmetoder i "string" , som gör samma sak som dessa funktioner. Det ser snyggare ut om du använder dessa istället.
M mozilla Medlem sedan juli 2001 1 084 inlägg Namespacet heter väl(om jag inte mins helt fel) Microsoft.VisualBasic
Men metoderna i "string" är...
[b]VB C#[/b]
InString = string.IndexOf("")
Len = string.Length
Mid = string.Substring(0,1)
En bra sida angående detta är VB.NET and C# Comparison