Java is a High-Level, Platform-Independent programming language. Network settings, and how you control them will depend on your Operating System, and to my knowledge there is no simple way or an API to expose this,but i tried write a code maybe is helpful for you.
Code :
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package network;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.InetAddress;
import java.net.InterfaceAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
* @author Electron-Eddine
*/
public class Network {
ArrayList<String> localNetworks = new ArrayList<>();
public static void main(String[] args) throws IOException {
new network.Network().display(new Network().getNetwokrs());
new Network().searchSystemNetwork(new Network().getNetwokrs());
}
public ArrayList<String> getNetwokrs() throws IOException {
ProcessBuilder builder = new ProcessBuilder(
"cmd.exe", "/c", "netsh wlan show networks mode=Bssid");
builder.redirectErrorStream(true);
Process p = builder.start();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
String lineCommand;
String network ;
while (true) {
lineCommand = r.readLine();
if (lineCommand == null) {
break;
} else if (lineCommand.contains("SSID")&&!lineCommand.contains("BSSID")) {
String[] networks = lineCommand.split(":", 2);
network = networks[1];
if (!network.equals(" ")) {
String pureNetworkName = network.trim();
localNetworks.add(pureNetworkName);
} else {
return null;
}
}
}
return localNetworks;
}
private void display(ArrayList<String> networks) {
networks.forEach(network -> {
System.out.println(network);
});
}
private void searchSystemNetwork(ArrayList<String> networks) {
String REQUIRED_NETWORK = "PEER2PEER";
networks.forEach(network -> {
if (network.equals(REQUIRED_NETWORK)) {
System.out.println("Network is availabale");
} else {
}
});
}
void create()
{
// Netsh WLAN export profile key=clear folder="Folder_Path"
}
}
Output :
run:
PEER2PEER
condor PGN522
Ammar_A
Network is availabale
BUILD SUCCESSFUL (total time: 1 second)