import java.io.*;
public class WordCount {
public static int words=1;
public static int lines=1;
public static int chars=1;
public static void wc(InputStream f) throws IOException{
int c=0;
boolean last = false;
String nullspace =" \t\n\r"; while ((c=f.read()) !=-1 ){
chars++; //包括空格 换行
if (c == '\n')
{
lines++;
}
if (nullspace.indexOf(c)!=-1)
{
if(last){
words++;
}
last =false;
}
else{
last=true;
} } }
public static void main(String args[]){
FileInputStream f;
try{
if(args.length==0){
f=new FileInputStream("h:/test.txt");
wc(f);
} }catch (IOException e) //确保程序不会因出错崩溃
{
System.out.println("文件不存在!");
return;
}
if(words==1 && lines==1 && chars==1)
{
System.out.println("文件为空!");
}
else{
System.out.println(lines + "行 \n" + words + "个单词\n" + chars + "个字符");
}
} }

第三周(JAVA编写的 wordcount)的更多相关文章

  1. 第三周java学习总结

    学号 20175206 <Java程序设计>第三周学习总结 教材学习内容总结 本周为第四章的学习,分为以下几个方面: 1.包与代码组织 2.String类 3.对象创建 4.包装类 经过代 ...

  2. 20175215 2018-2019-2 第三周java课程学习总结

    第三周 一.使用JDB调试java代码(主要内容为断点) 以下文字内容转自使用JDB调试java程序,图片则为自己的截图 我们提倡在Linux命令行下学习Java编程.学习时在Ubuntu Bash中 ...

  3. 第三周java实验报告

        实验三 Java基本程序设计(2) 实验时间 2018-9-13 第一部分:理论知识回顾 第一章 再次了解了java“白皮书”的关键术语,java的常见术语,对于大多数“白皮书”的关键术语依然 ...

  4. 苏浪浪 201771010120 第三周 Java基本程序设计总结

    理论知识: Java有五种语句: (1)方法调用语句(2)表达式语句(3)复合语句(4)控制语句(5)package.import语句 3.8控制流程 3.9大数值 *如果基本的整型和浮点型数据无法达 ...

  5. 第四,五周——Java编写的电梯模拟系统(结对作业)

    作业代码:https://coding.net/u/liyi175/p/Dianti/git 伙伴成员:石开洪 http://www.cnblogs.com/shikaihong/(博客) 这次的作业 ...

  6. 第三周JAVA程序设计基础学习总结

    20145322学号 <Java程序设计>第3周学习总结 ## 教材学习内容总结 之前第三章说过Java中主要有基本类型和类类型两种类型系统,第四章主要谈类类型. 类定义时使用class关 ...

  7. 王颖奇 201771010129 第三周 Java基本程序设计总结

    实验三 Java基本程序设计 实验时间 2018-9-13 201771010129 王颖奇 1.实验目的与要求 (1)进一步掌握Eclipse集成开发环境下java程序开发基本步骤: (2)熟悉PT ...

  8. 201521123105 第三周Java学习总结

    1. 本周学习总结 对象(实际个体) 对象与类 类(模板) 2.书面作业 1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private ...

  9. java实验报告&第三周学习总结

    实验报告: 实验1:求水仙花数在C语言中求水仙花数是一个复杂且长的代码,在java中可以通过简单的代码来实现操作,找出水仙花数: 图例如下: 试验2:求13+23-33+43-53.........9 ...

随机推荐

  1. post-message-stream的学习-metamask

    kumavis/post-message-stream post-message-stream Sets up a duplex object stream over window.postMessa ...

  2. Linux下安装与配置snmp服务

    一.安装snmp服务 1.检查系统是否已经安装snmp的rpm包 以下是安装snmp服务需要的rpm包: libsensors3-2.10.6-55.el5.i386.rpm lm_sensors-2 ...

  3. (三) DRF 序列化

    一.单表的GET和POST: 使用serializers序列化,针对每一个表,需要单独写函数.一般会写在views.py里面,但是这样做,会导致整个文件代码过长.需要分离出来! 在app01(应用名) ...

  4. 在ROS中使用QT界面

    在终端可以直接用catkin_create_qt_pkg命令创建带Qt界面的ROS package,再按照前面说的方法导入到Qt即可 这里参考的是qt_createTutorialsQt App Te ...

  5. POJ 1144 Network(tarjan 求割点个数)

    Network Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 17016   Accepted: 7635 Descript ...

  6. C#中public与private与static

    现在静下心来想要重新细致的过一遍C#,因为自己做C#没有底气,, 闲话少说 先来一句话 public(共有的) 声明的方法和属性,可以被外部调用. private(私有的) 声明的方法和属性,只能在本 ...

  7. day46

    CSS选择器 盒模型 标签a.img.list 伪类选择器 CSS选择器 一.基础选择器 1.通配选择器 - { border: solid; } 匹配文档中所有标签:通常指html.body及bod ...

  8. 多模匹配算法之Aho-Corasick

    除剔除那些含有敏感词的文本,由于有大量的敏感词,所以通过简单的正则表达式和字符串查找的方式效率太低,每次都有遍历一次字符串.而AC算法的核心思想就是避免不必要的回溯使搜索一直沿着向前的方向,最大可能的 ...

  9. linux找到目录下所有目录文件

    想要删除掉该目录下的所有文件类型是目录的文件? 这样运行: $ ls -F | grep /$ | xargs rm -rf ls 中F参数,作用是能把目录文件的名字后边加上一个斜杠/ 然后匹配以斜杠 ...

  10. Java关键字(二)——native

    本篇博客我们将介绍Java中的一个关键字——native. native 关键字在 JDK 源码中很多类中都有,在 Object.java类中,其 getClass() 方法.hashCode()方法 ...