java实现wc.exe的基本功能
版权声明:本文为博主原创文章,转载请声明。
今天用java实现了wc.exe的基本功能,感觉还是蛮简单的,重点是读取字符串时候,空格也会读取进去,如果不处理一下的话,空格也会算进字符里面.。
需要注意的是,如果是中文的话,java会算两个两个字节读取。所以这个代码只能统计英文。
github地址:https://github.com/ICanV/wc
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | package demo2; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStreamReader; public class wc { public void wcexe() throws IOException{ String filepath= "C:/Users/Administrator/Desktop/123.txt" ; //文件路径 BufferedReader br = null ; int countWord= 0 ; int countChar= 0 ; int countLine= 0 ; String s= "" ; String strCount= "" ; try { br = new BufferedReader( new InputStreamReader( new FileInputStream( new File(filepath)))); while ((s=br.readLine())!= null ) { s=s+ " " ; strCount+=s; countLine++; } for ( int i= 0 ;i<strCount.split( " " ).length;i++){ if (!strCount.split( " " )[i].equals( " " )) countWord++; countChar+= strCount.split( " " )[i].length(); } System.out.println( "单词数:" +countWord); System.out.println( "字符数:" +countChar); System.out.println( "行数:" +countLine); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { br.close(); } } public static void main(String[] args) throws IOException{ wc w= new wc(); w.wcexe(); } } |
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步