Java如何获取win2k系统登陆用户名? 如果不要密码的话可以用Runtime.exec调用系统命令set user来获得。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用native method 调用c++的方法实现 如果不要密码的话可以用Runtime.exec调用系统命令set user来获得。应该用net user吧!!! net user\\JINGUO のユーザー アカウント-------------------------------------------------------------------------------Administrator Guest IUSR_JINGUO IWAM_JINGUO VUSR_JINGUO コマンドは正常に終了しました。net name名前 -------------------------------------------------------------------------------JINGUO JINGUO$ WANGJG コマンドは正常に終了しました。net user中没有当前登陆用户名,net name中有wangjg但要如何在java中获取到,我还不知道try 用native method 调用c++的方法实现 InputStream is = Runtime.getRuntime().exec("net name").getInputStream(); BufferedReader br = new BufferedReader(new InputStreamReader(is)); String str=""; while((str=br.readLine()) != null) { System.out.println(str); }sorry,问题是如何获得局域网中每个机子的登陆名? public static String getComputerName(InetAddress address){ String name="" ; try{ name=address.getHostName() ; } catch(Exception e){ e.printStackTrace() ; } return name ;}若是本地主機,只需: InetAddress add = InetAddress.getHostAddress() ; computerName = getComputerName(add) ;若是遠程主機,需要先獲取其主機地址,然後用getComputerName()方法 下面是取得机器上哪个用户登陆的用户名,循环第1个是机器名,第二个是登陆的用户名,第三个是登陆用户的主文件夹,你自己看看还有什么需要修改的。 Process p = null; Properties envVars = new Properties(); Runtime r = Runtime.getRuntime(); p = r.exec( "cmd.exe /c set user" ); BufferedReader br = new BufferedReader ( new InputStreamReader( p.getInputStream() ) ); String line; while( (line = br.readLine()) != null ) { int idx = line.indexOf( '=' ); String key = line.substring( 0, idx ); String value = line.substring( idx+1 ); envVars.setProperty( key, value ); System.out.println( key + " = " + value ); } 但是按楼上的方法,我把它包装成window的服务后,就不能获得用户名了哦!还有更好的解决方法吗? JExcel API 问题 关于数组对象的赋值问题~~~~ 谁能给我说说preffered size 和minimum size JTable问题 问题不大,解决了就给分 一个小问提 在线等待交流 求大神帮忙!!! 我学了一段时间的Java,。。。 请问怎样截取一个string中的一段? dubbo怎么用 一个错误,请高手指教 javabean和javaclass的区别
Administrator Guest IUSR_JINGUO
IWAM_JINGUO VUSR_JINGUO
コマンドは正常に終了しました。net name名前
-------------------------------------------------------------------------------
JINGUO
JINGUO$
WANGJG
コマンドは正常に終了しました。net user中没有当前登陆用户名,net name中有wangjg但要如何在java中获取到,我还不知道try
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String str="";
while((str=br.readLine()) != null)
{
System.out.println(str);
}sorry,问题是如何获得局域网中每个机子的登陆名?
String name="" ;
try{
name=address.getHostName() ;
}
catch(Exception e){
e.printStackTrace() ;
}
return name ;
}
若是本地主機,只需:
InetAddress add = InetAddress.getHostAddress() ;
computerName = getComputerName(add) ;
若是遠程主機,需要先獲取其主機地址,然後用getComputerName()方法
Properties envVars = new Properties();
Runtime r = Runtime.getRuntime();
p = r.exec( "cmd.exe /c set user" );
BufferedReader br = new BufferedReader ( new InputStreamReader( p.getInputStream() ) );
String line;
while( (line = br.readLine()) != null ) {
int idx = line.indexOf( '=' );
String key = line.substring( 0, idx );
String value = line.substring( idx+1 );
envVars.setProperty( key, value );
System.out.println( key + " = " + value );
}