版权声明:本文为博主原创文章,转载请声明。
今天用java实现了wc.exe的基本功能,感觉还是蛮简单的,重点是读取字符串时候,空格也会读取进去,如果不处理一下的话,空格也会算进字符里面.。
需要注意的是,如果是中文的话,java会算两个两个字节读取。所以这个代码只能统计英文。
代码如下:
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(); } }
时间: 2024-09-30 05:36:57