统计top500的过程总结(perl,shell,java)【3-java】

原创 2011年11月29日 17:01:38

三、java相关

     这里shell程序调用java程序的原因是:perl脚本生成的excel文件,其中的词条URL无法解码为人可以识别的汉字(与linux系统编码相关的,不能改系统编码,所以要用java程序处理一下perl生成的excel)。例如将http://www.hudong.com/wiki/%E5%8D%95%E6%9B%B2%E5%BE%AA%E7%8E%AF%E7%97%87解码为http:www.hudong.com/wiki/单曲循环症 保存到新的excel中。

    关于java读写excel的基本操作,可参考jxl导出Excel最全面的解释

    java读写excel文件有两种方式:一种是org.apache.poi方法,一种是jxl方法(要导入一个jar包:jxl.jar)。开始我用的poi的方式,但是该方法处理原始excel文件总报错:

java.lang.RuntimeException: Unexpected record type (org.apache.poi.hssf.record.HyperlinkRecord)
at org.apache.poi.hssf.record.aggregates.RowRecordsAggregate.<init>(RowRecordsAggregate.java:98)
at org.apache.poi.hssf.model.Sheet.<init>(Sheet.java:203)
at org.apache.poi.hssf.model.Sheet.createSheet(Sheet.java:158)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:287)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:201)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:317)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.<init>(HSSFWorkbook.java:298)
at com.hudong.test.TestPoi.read(TestPoi.java:105)
at com.hudong.test.TestPoi.read(TestPoi.java:79)
at com.hudong.test.TestPoi.main(TestPoi.java:36)

   解决该问题的方法是打开excel文件,随便点两下关闭的时候选择保存,问题就解决了。但是服务器上的excel没人让你每次去点两下,所以改选用jxl方式来处理perl生成的excel文件。


1、utf8解码为可识别的汉字的方法(java):

String temp = http://www.hudong.com/wiki/%E5%8D%95%E6%9B%B2%E5%BE%AA%E7%8E%AF%E7%97%87
temp = URLDecoder.decode(temp,"utf-8");

编码的方法为URLEncoder.encode();


2、java读写excel文件:(已上传资源,可下载,在我的资源里面)

   DecodeExcelJXL.java

   通过args[]直接获得shell脚本传过来的参数。

 public static void main(String[] args) throws BiffException, IOException, RowsExceededException, WriteException{
//      根据是否有参数,取得待处理excel表格
        if (args != null && args.length == 1) {
            filePath=args[0];
        }
        rewriteWithNew(filePath);
    }

perl、python、shell脚本区别

个人目前工作主要用到的脚本语言是shell、perl   sed和awk一般融入到shell里面应用, bash是shell的一种, 也是linux的默认shell shell是linux内核和用户命...
  • zhangrenfang
  • zhangrenfang
  • 2013年01月14日 14:20
  • 955

bash shell脚本编程学习总结一

shell脚本编程编译器-------解释器 静态语言:编译型语言,强类型(变量);事先转换成可执行格式。C/C++/JAVA/C# 动态语言:解释型语言,弱类型。边解释变执行。PHP,SHELL...
  • gurenshen
  • gurenshen
  • 2016年07月19日 10:03
  • 4029

Perl学习总结

Perl 教程 Perl 是 Practical Extraction and Report Language 的缩写,可翻译为 "实用报表提取语言"。 Perl 是高级、通用、直译式、动...
  • bcbobo21cn
  • bcbobo21cn
  • 2017年04月08日 14:31
  • 306

perl 、shell、python之shell脚本入门

终于到shell 脚本这章了,在以前笔者卖了好多关子说shell脚本怎么怎么重要,确实shell脚本在linux系统管理员的运维工作中非常非常重要。下面笔者就带你正式进入shell脚本的世界吧。 到...
  • lifuxiangcaohui
  • lifuxiangcaohui
  • 2014年07月23日 15:35
  • 12739

perl 统计字符串中特定字符出现的次数

perl 统计字符串中特定字符出现的次数    最近写程序遇到如题问题,从网上搜了一些相关技巧,如下:             (利用数组和哈希的方法就不再列出了) 法一:      #!/usr/b...
  • suanleba10
  • suanleba10
  • 2013年08月11日 01:28
  • 2945

随机过程的概念以及统计特性(读书笔记)

随机过程的概念以及统计特性通俗的来说,随机过程其实就是一组因为时间t而产生关联的随机变量的所组成的序列。改序列可以是连续的,也可以是离散的。同时,每个随机变量也同样可以是连续的或者离散的。 随机过程...
  • qq_33843297
  • qq_33843297
  • 2017年10月12日 12:24
  • 181

perl脚本的简单调试方法

初学perl语言,最先接触的不是它的语法,而是它的调试方法,当时是由于一个perl script生成的html页面无法正常显示,让我找出问题的原因,然后修复,当时是第一次接触perl,完全没有任何了解...
  • wenwenxiong
  • wenwenxiong
  • 2015年08月18日 19:56
  • 1055

《Perl语言入门》

1、书籍:《Perl语言入门》     2.幽感:花费了数天的时间,将《Perl语言入门》过了一遍,当然很多地方看的并不是特别细致,但在目前这个阶段,我也觉得并不需要特别钻,在可预见的工作中...
  • BlackEnn
  • BlackEnn
  • 2016年08月14日 21:10
  • 2267

Perl 获取cpu使用率

1、先了解/proc/stat文件信息     在Linux/Unix下,CPU利用率分为用户态,系统态和空闲态,分别表示CPU处于用户态执行的时间,系统内核执行的时间,和空闲系统进程执行的时间...
  • icechenbing
  • icechenbing
  • 2013年06月13日 16:12
  • 2412

一行shell命令实现代码行数统计

shell find 代码统计方法大全
  • fanwenjieok
  • fanwenjieok
  • 2016年11月24日 15:36
  • 2768
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:统计top500的过程总结(perl,shell,java)【3-java】
举报原因:
原因补充:

(最多只允许输入30个字)