Avatar billede moejensen Nybegynder
22. oktober 2002 - 17:39 Der er 14 kommentarer og
1 løsning

konverter sting til int

Jeg har lavet en metode der tager to int og lægger dem sammen. På min aspx side har jeg så to tekst bokse hvir i man skal skrive de to tal der skal lægges sammen. Men som standart er indholdet af en TextBox jo String, hvad gør jeg?
Avatar billede simon.ulsnes Nybegynder
22. oktober 2002 - 17:43 #1
Int32.Parse(dinString);

// Simon
Avatar billede moejensen Nybegynder
22. oktober 2002 - 17:53 #2
Den brokker sig stadig, jeg har følgende metodekald:

Message.InnerHtml = comp.res(Int32.Parse(tal1),Int32.Parse(tal2)).ToString();

tal1 og tal2 kommer fra følgende textboxe

<asp:TextBox id="tal1" runat="server"></asp:TextBox>
<asp:TextBox id="tal2" runat="server"></asp:TextBox>
Avatar billede cbp Nybegynder
22. oktober 2002 - 18:19 #3
Message.InnerHtml = comp.res(Int32.Parse(tal1.Text),Int32.Parse(tal2.Text)).ToString();
Avatar billede odegaard Nybegynder
22. oktober 2002 - 22:37 #4
Du skal parse "tal1.Text", og ikke "tal1" !

Ved konverteringen burde du tjekke for om teksten kan konverteres til et tal:

if(IsNumeric(tal1.Text)) {
    tal1=Int32.Parse(tal1.Text);
} else {
  //Tallet kan ikke konverteres til et tal!
}
Avatar billede cms Nybegynder
22. oktober 2002 - 22:54 #5
hov! IsNumeric med C#-syntax :)
Avatar billede odegaard Nybegynder
23. oktober 2002 - 00:51 #6
Er den ikke med i C# ? Nå... min fejl så :-)
Jeg er jo stadig mest kendt i VB.NET
Avatar billede moejensen Nybegynder
23. oktober 2002 - 12:34 #7
Jeg prøvede dette her:
Message.InnerHtml = comp.res(Int32.Parse(tal1.Text),Int32.Parse(tal2.Text)).ToString();
og det virkede ikke

Nu ser koden således ud, og lortet virker ikke:

<%@ Page Language="C#" %>
<%@ import Namespace="sub" %>
<script runat="server">

    // Insert page code here
    //
   
    void Button1_Click(Object sender, EventArgs e) {
          int tal3;
          int tal4;
          subObj comp = new subObj();
          tal3=Int32.Parse(tal1.Text);
          tal4=Int32.Parse(tal2.Text);
          Message.InnerHtml = comp.res(tal3,tal4).ToString();
    }

</script>
<html>
<head>
</head>
<body>
    <form runat="server">
        <p>
            <asp:Label id="tal1" runat="server">Tal 1</asp:Label>
            <asp:TextBox id="TextBox1" runat="server"></asp:TextBox>
        </p>
        <p>
            <asp:Label id="tal2" runat="server">Tal 2</asp:Label>
            <asp:TextBox id="TextBox2" runat="server"></asp:TextBox>
        </p>
        <p>
            <asp:Button id="Button1" onclick="Button1_Click" runat="server" Text="Button"></asp:Button>
        </p>
        <p>
            Resultat:<div id="Message" runat="server"></div>
        </p>
        <!-- Insert content here -->
    </form>
</body>
</html>
Avatar billede cms Nybegynder
23. oktober 2002 - 16:51 #8
:)
Avatar billede odegaard Nybegynder
23. oktober 2002 - 16:56 #9
>lortet virker ikke ??!?!?!?
Hvilken fejl får du ???? Lidt mere specifikke beskrivelser ville ihvertfald ikke gøre det sværere at hjælpe.
Avatar billede simon.ulsnes Nybegynder
23. oktober 2002 - 17:33 #10
hvad med at lave <div id="Message"...> om til <asp:Label id="Message" ... />?

I stedet for Message.InnerHtml bruger du så Message.Text.

// Simon
Avatar billede moejensen Nybegynder
23. oktober 2002 - 18:08 #11
Sorry, jeg har ændret til det simon foreslår, men får stadig denne fejl:

Input string was not in a correct format.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.FormatException: Input string was not in a correct format.
Avatar billede moejensen Nybegynder
25. oktober 2002 - 13:52 #12
kan i slet ikke hjælpe mig?
Avatar billede odegaard Nybegynder
25. oktober 2002 - 15:26 #13
Hvad mere hjælp vil du have end "Input string was not in a correct format" ?
Dvs. den tekststreng du giver, lader sig ikke konvertere til et tal.
F.eks.
Int32.Parse("hallo"); // Giver fejl
Int32.Parse("54,23"); // Giver fejl
Int32.Parse("54.10"); // Burde virke
Int32.Parse(Replace("54,23",",",".")); // Burde virke

Det var derfor jeg indsatte de linjer der tjekkede for om det i det hele taget var muligt at konvertere tallet, inden man gjorde det.
Avatar billede moejensen Nybegynder
26. oktober 2002 - 15:54 #14
det der bare undre mig, er at jeg får fejlen før jeg overhoved har indtastet talne. Jeg får slet ikke den første side frem.
Avatar billede moejensen Nybegynder
08. januar 2003 - 13:11 #15
da der ikke kommer flere indlæg, lukker jeg spørgsmålet :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester