`
magixyu
  • 浏览: 79421 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Jruby学习一则 获得网络接口信息

    博客分类:
  • Ruby
阅读更多
Code:
Ruby写出来果然比Java简单多了

require 'java'
import 'java.util.Enumeration'
import 'java.net.NetworkInterface'
import 'java.net.InetAddress'

nfis = NetworkInterface.getNetworkInterfaces();
puts "-" * 10 + " Dumping NetworkInterfaces " + "-" * 10
nfis.each do | nfi |
  puts "Network Interace " + nfi.getName();
  puts "Network Name     " + nfi.getDisplayName();
  puts "Network Addresses"
  addrs = nfi.getInterfaceAddresses();
  addrs.each do | addr |
    puts "InterfaceAddress: #{addr}"
    puts "InterfaceAddress: #{addr.getAddress()}"
  end
  puts "-" * 47
end


Output:
---------- Dumping NetworkInterfaces ----------
Network Interace lo
Network Name     MS TCP Loopback interface
Network Addresses
InterfaceAddress: /127.0.0.1/8 [/127.255.255.255]
InterfaceAddress: /127.0.0.1
-----------------------------------------------
Network Interace eth0
Network Name     Broadcom 802.11b/g WLAN - Packet Scheduler Miniport
Network Addresses
InterfaceAddress: /192.168.0.100/24 [/192.168.0.255]
InterfaceAddress: /192.168.0.100
-----------------------------------------------
Network Interace eth1
Network Name     NVIDIA nForce Networking Controller - Packet Scheduler Miniport

Network Addresses
-----------------------------------------------


一开始试验的java
import java.net.*;
import java.util.Enumeration;
public class ShowInterface 
{
    public static void main(String[] argv) {
        Enumeration<NetworkInterface> nifs;
        try {
            nifs = NetworkInterface.getNetworkInterfaces();
        } catch (Exception e) {
            System.out.println("ERROR!");
            return;
        }
        //NetworkInterface nifs = new NetworkInterface();
        while ( nifs.hasMoreElements() ) {
            NetworkInterface nif = nifs.nextElement();
            System.out.println("Network Interface -> " + nif.getName());
            System.out.println("  Network Name: " + nif.getDisplayName());
            System.out.println("  Network Address: ");
            Enumeration<InetAddress> eaddr = nif.getInetAddresses();
            while ( eaddr.hasMoreElements() ) {
                InetAddress addr = eaddr.nextElement();
                System.out.println("\t" + addr);
            }
            System.out.println("--------------------------------------------------");
        }
    }
}

分享到:
评论

相关推荐

    jruby1.7.8版本呢

    2. 运行 `jruby -v` 命令检查安装是否成功,如果显示版本号,则表明已成功安装。 3. 使用 JRuby 的 `irb` (交互式 Ruby shell) 或者运行 Ruby 脚本,如 `jruby your_script.rb`。 **4. JRuby 与 Java 交互** JRuby...

    jruby-src-1.0

    这个压缩包“jruby-src-1.0.zip”包含了JRuby 1.0版本的所有源代码文件,对于开发者来说,这是一份宝贵的学习和定制JRuby的资源。 在了解JRuby之前,我们先来看一下Ruby语言。Ruby是由松本行弘(Yukihiro Matsumoto...

    Ruby-JRuby一个Ruby语言的Java实现

    Ruby是一种动态、面向对象的脚本编程语言,以其简洁、优雅的语法和强大的元编程能力而受到程序员的喜爱。然而,由于其原生解释器是用C语言编写的,它在某些场景下可能无法充分利用现代多核处理器的性能,或者无法很...

    如何安装与配置JRuby

    例如,如果 JRuby 解压到 `C:\jruby-1.1.2`,则添加 `JRUBY_HOME=C:\jruby-1.1.2` 到系统环境变量。 3. **更新 PATH**: 在系统环境变量的 `PATH` 中追加 `/jruby-1.1.2/bin`,以便于命令行调用 JRuby 命令。 4. **...

    org.jruby.rar

    标题 "org.jruby.rar" 暗示我们正在讨论一个与 JRuby 相关的压缩文件,其中可能包含了 JRuby 的源代码、库文件或者其他相关资源。JRuby 是一种 Java 实现的 Ruby 解释器,它允许 Ruby 代码在 JVM(Java 虚拟机)上...

    jruby-bin-1.3.1.zip

    JRuby是Java平台上的一个实现,它允许开发者在Java虚拟机(JVM)上运行Ruby编程语言。这个“jruby-bin-1.3.1.zip”压缩包是JRuby的一个早期版本,专为Ruby语言的研发提供必要的工具和环境。在这个版本中,重点是兼容...

    jRuby On Rails WEB2.0

    《jRuby on Rails WEB2.0》:将Ruby on Rails融入Java...通过本书的学习,读者不仅能够掌握jRuby on Rails的理论知识,还能通过实践掌握如何在实际项目中应用这一技术,从而提升个人技能,推动企业应用的创新与发展。

    weka-jruby:使用JRuby进行机器学习和数据挖掘

    weka gem尝试继承Weka中定义的命名空间,并增强了一些接口,以便在使用Weka库时允许使用更具Ruby风格的编程风格。 保留名称空间的想法是,您还可以使用查找功能和类。 请参阅以获取有关如何将Weka与JRuby结合使用...

    jruby-1.5.5+OperaWatir+RSpec

    标题 "jruby-1.5.5+OperaWatir+RSpec" 暗示了这是一个关于使用 JRuby 1.5.5 版本、OperaWatir 和 RSpec 进行自动化测试的项目或者资源集合。现在,我们将深入探讨这三个关键组件以及它们在 IT 领域中的应用。 JRuby...

    jruby_windows1.7and bin1.7

    JRuby是面向Ruby、基于Java虚拟机(JVM)的一种解释程序,它结合了Ruby语言的简易性和功能强大的JVM的执行机制,包括与Java库 全面集成。Rails彻底加快及简化了Web应用的开发,不过它让人觉得不够成熟,特别是在高端...

    jruby_windows_1_6_4安装文件

    4. **验证安装**:打开命令提示符,输入`jruby -v`,如果显示出JRuby的版本信息,表明安装成功。 **使用JRuby on Windows** - **编写Ruby代码**:使用你喜欢的文本编辑器或IDE,如Notepad++或IntelliJ IDEA,编写...

    JRuby 实战入门

    在IT领域,Ruby是一种高级、动态、面向对象的脚本语言,以其简洁、优雅的语法和强大的元编程能力受到开发者们的喜爱。Rails是Ruby的一个开源Web应用框架,它遵循MVC(模型-视图-控制器)架构模式,极大地简化了Web...

    JRuby+Swing是开发人员钟情的选择

    3. **文档丰富**:JRuby 有详尽的文档,方便开发者学习和解决问题。 4. **IDE 支持**:支持多种优秀的 Java 开发环境,如 IntelliJ IDEA 或 Eclipse,提供良好的集成开发体验。 5. **免费与许可**:JRuby 本身和 ...

    如何监控JRuby脚本的执行

    在IT行业中,尤其是在Java与Ruby混合开发的场景中,JRuby是一个重要的工具,它允许开发者在Java平台上运行Ruby代码。由于JRuby是基于JVM(Java Virtual Machine)的,因此可以利用Java生态中的各种工具来对其进行...

    jruby-1.3.1.jar

    jruby-1.3.1.jar包 解决org.jruby.exceptions.JumpException 等报错

    jruby-core-1.7.12.zip

    标题 "jruby-core-1.7.12.zip" 提供的是 JRuby 的核心库版本 1.7.12,这是一个将 Java 虚拟机(JVM)与 Ruby 语言结合的开源实现。JRuby 允许开发者在 Java 平台上运行 Ruby 代码,同时利用 Java 生态系统的强大功能...

    JRuby window X64 开发软件

    JRuby window X64 开发软件

    jruby-bin-0.9.0.tar.gz

    而“这是一个ruby的java实现”则表明 JRuby 是Ruby的一种实现方式,它通过Java虚拟机(JVM)来运行Ruby程序,实现了跨平台的兼容性。 **标签:“jruby”**:这个标签直接指出了主题,即 JRuby,它是Ruby语言的一个...

Global site tag (gtag.js) - Google Analytics