Führende 0 entfernen?

Status
Nicht offen für weitere Antworten.

Pago83

Bekanntes Mitglied
Hallo,

ich habe folgende Methoden:

Code:
  public boolean setIp(String newIp)
    {
        StringTokenizer st = new StringTokenizer(newIp, ".");
        if (st.countTokens() != 4)
        {
            clear();
            return false;
        }
        String[] comps = new String[4];
        for (int i = 0; i < 4; i++)
        {
            try
            {
                comps[i] = st.nextToken();
                int test = Integer.parseInt(comps[i]);
                if (test < 0 || test > 255)
                {
                    clear();
                    return false;
                }
            }
            catch (Exception ex)
            {
                clear();
                return false;
            }
        }
        ipField1.setText(comps[0]);
        ipField2.setText(comps[1]);
        ipField3.setText(comps[2]);
        ipField4.setText(comps[3]);
        return true;
    }

    public String getIp()
    {
        if (ipField1.getText().length() != 0 && ipField2.getText().length() != 0 && ipField3.getText().length() != 0
            && ipField4.getText().length() != 0)
        {
            String nip = ipField1.getText() + "." + ipField2.getText() + "." + ipField3.getText() + "."
                         + ipField4.getText();
            return nip;
        }
        else
            return null;
    }

Was muss ich ändern, damit führende 0 nicht übernommen werden. Die Eingabe sowie die Anzeige soll noch erlaubt sein, für die Weiterverarbeitung jedoch sollen sie entfernt werden.

Hat jemand eine Idee?

MfG Pago
 
Integer.parseInt entfernt die automatisch wenn du ne zahl draus machst. wenn dus allerdings unbedingt als string behalten willst kannst du auch z.b. "001".repaceAll("0+", "") verwenden
 
Code:
"001".repaceAll("0+", "");
mit 001 geht dat.
mit 100 auch -> 1
mit 010 -> 1

irgendwas stimmt da nicht 😉
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben