0
Ich versuche Signalstärke von SSID zu bekommen. Meine Ausgabe ist: ssid Name + Signal
Beispiel: GIGABYTE 92%
aber ich möchte nur ausgegeben: GYGABYTE 92Wie lösche ich mein letztes Zeichen aus der Ausgabe (%)?
Ich möchte wissen, wie kann ich letzte Zeichen von meinem Ausgang (%) zu entfernen.
Bitte helfen Sie mir, es zu lösen.
Dies ist mein Code:
ArrayList<String>ssids=new ArrayList<String>();
ArrayList<String>signals=new ArrayList<String>();
ProcessBuilder builder = new ProcessBuilder(
"cmd.exe", "/c", "netsh wlan show all");
builder.redirectErrorStream(true);
Process p = null;
try {
p = builder.start();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line;
while (true) {
try {
line = r.readLine();
if (line.contains("SSID")||line.contains("Signal")){
if(!line.contains("BSSID"))
if(line.contains("SSID")&&!line.contains("name")&&!line.contains("SSIDs"))
{
line=line.substring(8);
ssids.add(line);
}
if(line.contains("Signal"))
{
line=line.substring(30);
signals.add(line);
}
if(signals.size()==7)
{
break;
}
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
for (int i=1;i<ssids.size();i++)
{
System.out.println(ssids.get(i)+" "+signals.get(i));
}
}
}
Sie haben mehrere Möglichkeiten. Am einfachsten wäre es, 'String # substring()' – TheLostMind
Danke zu verwenden. Ich werde versuchen – valentina
Eine andere Möglichkeit ist, String # replaceAll-Methode zu verwenden. –