本帖最后由 gdx9125 于 2011-11-29 08:37:24 编辑

解决方案 »

  1.   

    做文字处理.split还是很方便的啊
      

  2.   

    打好基础,学习完javase 建议学习javaee。
      

  3.   

    我觉得这个记事本加excel就可以搞定。
      

  4.   

    public void testSpit(){
    String s ="B8:AC:6F:4A:93:1E=33G04|192.168.3.70";
    String[] ss = s.split("=.*\\|");
    StringBuffer sb = new StringBuffer();
    sb.append(ss[1]).append("  ").append(ss[0]);
    System.out.println(sb.toString());
    }
      

  5.   

    最好不要在main中抛出异常,可以用try语句快
      

  6.   

    字符串加io操作,确实是很基础,不过也是必不可少的JAVA操作。其实按照你上面的物理mac对应ip地址的写法,我觉得用properties文件来存效率会高点。
      

  7.   

    刚学了JAVA用来处理实际问题确实有些成就感。虽然处理这个问题可以用EXCEL来解决,不过用自己的方法更开心。
      

  8.   

    我还没入门,不知道JAVA什么感觉
      

  9.   

    我用 Excel 给搞定了。 JAVA 正在学习中 …… LZ 很强大。
      

  10.   

    LZ努力,我也写了一段code public static void main(String[] args) {
    String macString = "B8:AC:6F:4A:93:1E=33G04|192.168.3.70";
    String ipString = getIpString(macString);
    System.out.println(ipString);
    } static String getIpString(String macString){
    return new StringBuilder()
    .append(macString.substring(macString.lastIndexOf("|") + 1, macString.length()))
    .append(" ")
    .append(macString.substring(0, macString.indexOf("="))).toString();
    }
      

  11.   

    其实我得解释一下数据源是这样的一个文本格式:
    ……
    B8:AC:6F:4A:93:1E=33G04|192.168.3.70
    B8:AC:6F:48:CE:3B=33G05|192.168.3.71
    B8:AC:6F:4A:96:D8=33G06|192.168.3.72
    ……
    这个文本文件里至少有276条有效数据,但是我不知道如何将这些数据一条一条的复制Excel中对应的表格中?
    如果是一行行的复制的话,我就可以一行行的更改样式得了。呵呵,其实我挺笨的,还真不知道如何将多条数据一个个添加到每一个表格里,不过真是跟你学到东西了,Excel的功能很强大,领教了~~
      

  12.   

    鼓励之余,提醒注意一点,关流等释放资源的操作,放在finally块。
      

  13.   

    直接全选,然后打开excel直接粘贴就行了。其实如果是我,我也会用excel,或者直接将txt档导入MSSQL,然后用sql语句在查询分析器里面写更实在。就看怎么灵活运用了,方法实在太多了。select right(col1,12)+' ' + left(col1,17)
    select replace(right(col1,12),':','')+' ' + left(col1,17)
      

  14.   

    命令行版的D:\>type a.txt
    B8:AC:6F:4A:93:1E=33G04|192.168.3.70
    B8:AC:6F:48:CE:3B=33G05|192.168.3.71
    B8:AC:6F:4A:96:D8=33G06|192.168.3.72D:\>for /f "tokens=1,3 delims==|" %i in (a.txt) do @echo %j %i
    192.168.3.70 B8:AC:6F:4A:93:1E
    192.168.3.71 B8:AC:6F:48:CE:3B
    192.168.3.72 B8:AC:6F:4A:96:D8D:\>for /f "tokens=1,2,3,4,5,6,7,8 delims==|:" %i in (a.txt) do @echo %i%j%k%l%m%n=%p,%o
    B8AC6F4A931E=192.168.3.70,33G04
    B8AC6F48CE3B=192.168.3.71,33G05
    B8AC6F4A96D8=192.168.3.72,33G06
      

  15.   

    看来楼主还没用Excel干过正事~~哈哈
      

  16.   

    awk -F"|" '{print $2, $1}' a.txt|cut -f1 -d '='
      

  17.   


    呵呵… 其实直接复制,在 excel 里直接粘贴 就可以了。excel 会自动给你换单元格,还是很方便的 … 楼主的 java 代码写的不错。看了,学习了。
      

  18.   

    [dell@andy ~] $ cat a.txt
    B8:AC:6F:4A:93:1E=33G04|192.168.3.70
    B8:AC:6F:48:CE:3B=33G05|192.168.3.71
    B8:AC:6F:4A:96:D8=33G06|192.168.3.72[dell@andy ~] $ awk -F'[=|]' '{print $3, $1}' a.txt
    192.168.3.70 B8:AC:6F:4A:93:1E
    192.168.3.71 B8:AC:6F:48:CE:3B
    192.168.3.72 B8:AC:6F:4A:96:D8
      

  19.   

    如果你用eclipse的话,推荐一种简单的办法:
    1,把文本贴到一个文件中
    2,ctrl+f查找打开,勾选上“Regular expressions(中文版应该叫“正则表达式”)”;

    (\w{2}(\:\w{2}){5})\=.*?\|(\d{1,3}(\.\d{1,3}){3})
    全部替换成
    $3 $1不严格匹配的话或用
    ([^=]*)\=.*?\|(.*)\n^
    全部替换成
    $2 $1
      

  20.   

    哈,话说我以前用程序干的第一件正事是CSDN的抢SF机器人!小无耻。
      

  21.   

    统计软件也可以搞定,比如SPSS、STATA等等
      

  22.   

    楼主加油吧。其实遇到日志文件的处理,还可以用下linux的命令,效率高很多的哦~
      

  23.   

    直接用UE或editplus的替换功能就可以,替换时可以写正则表达式,这样更方便
      

  24.   

    一个健壮的程序需要加上一些异常数据的控制,比如:String[] s = str.split("=");
    String[] s1 = s[1].split("\\|");文件中有一行数据如果只是一个空行,或者是一行不正确的数据(其中没有“=”或者没有“|”)那这段程序还能继续跑么?
      

  25.   

    百花齐放啊~~ 比较简单的说~~ 偏向与正则和脚本~~ Excel也不错~~ 用sql就有点大材小用了 主要是怎么方便怎么来~~~