软件工程项目程序:WC
1:代码来源:http://yuncode.net/code/c_5087c8e4cd77190
2:Platform:Eclipse
Language:Java
3:Bug:暂时没有
4. Function improvement:实现对文件里的字符,单词以及行数的统计。
5:代码:
import java.io.*;
/**
* 统计文本文件的行数,单词书,字节数
*/
class WordCount {
public static int words = 1;
public static int lines = 1;
public static int chars = 0;
public static void wc(InputStream f) throws IOException {
int c = 0;
boolean lastNotWhite = false;
String whiteSpace = " \t\n\r";
while ((c = f.read()) != -1) {
chars++;
if (c == '\n') {
lines++;
}
if (whiteSpace.indexOf(c) != -1) {
if (lastNotWhite) {
words++;
}
lastNotWhite = false;
} else {
lastNotWhite = true;
}
}
}
public static void main(String args[]) {
FileInputStream f;
try {
if (args.length == 0) { // We're working with stdin
f = new FileInputStream("c:/123.txt");
wc(f);
} else { // We're working with a list of files
for (int i = 0; i < args.length; i++) {
f = new FileInputStream(args[i]);
wc(f);
}
}
} catch (IOException e) {
return;
}
System.out.println(lines + "行 " + words + "个单词 " + chars + "个字节");
}
}
6:github地址:https://github.com/yeershao/hello-world/commit/9e6930db18fd409a3513318ed922d4fb67bb19a1
软件工程项目程序:WC的更多相关文章
- 软件工程项目基于java的wc实现
WC软件工程项目JAVA实现博客 github地址:https://github.com/liudaohu/myrepository.git 功能实现 · -w 统计单词数 -c 统计字符数 - ...
- [Tool]Inno Setup创建软件安装程序。
这篇博客将介绍如何使用Inno Setup创建一个软件安装程序. Inno Setup官网:http://www.jrsoftware.org/isinfo.php. 可以下载到最新的Inno Set ...
- 使用WinRar软件制作程序安装包
之前我写过使用好压软件打包程序,见随笔: 使用好压(HaoZip)软件打包EverEdit制作安装程序 - Fetty - 博客园http://www.cnblogs.com/fetty/p/4907 ...
- 软件工程项目之摄影App(总结)
软件工程项目之摄影App 心得体会: dyh:这次的项目很难做,本来想在里面添加动画效果的,但是找了很多例子都没看明白,能力还是不足够把,还有一个就是数据库在安卓课程里面刚刚涉及到,所以也还没能做出数 ...
- 红外遥控系统原理及单片机软件解码程序,我的编写经历(C版本)
应该说现在每一块开发板都带有红外模块,并且大都配置了相应的程序.但其实自己动手写解码程序,更能锻炼自己所学,且不谈程序写的如何,这个过程中肯定是受益良多的.现在我就把我花一下午写出的解码程序与大家分享 ...
- C#软件winform程序安装包制作及卸载程序制作
使用vs2010 winform程序开发的软件的人比较多,程序的开发是为了在不同的人不同的机器使用,为了使不同的机器能使用该软件就需要在制作程序安装包,安装包里必须包含该软件运行所选的所有环境,下面就 ...
- 【WPF】软件更新程序的设计思路
目标:客户端程序在启动时,自动联网检查服务端是否有新的版本,有则提示用户更新客户端. 思路: 1.打开Visual Studio,在主体程序的解决方案下再新建一个叫自动更新程序的项目.主体程序的目录是 ...
- 利用 ST-LINK Utility软件下载程序
先在电脑上安装STM32 ST-LINK Utility,软件安装一路Next就可以了,安装好软件之后界面如下: 下载程序只需要使用3个图标就可以了 第一个图标Connect to the ta ...
- 软件开发程序猿日常必备,现用现查&日志记录
日志记录-- logging模块 日志用处: 1.记录用户信息 2.记录个人流水 3.记录软件的运行状态 4.记录程序员发出的指令(跳板机) 5.用于程序员代码调试(print特别消耗内存,在开发测试 ...
随机推荐
- 20181013xlVba计算优秀率及合格率
Sub 计算高一优秀合格率() Dim Wb As Workbook Dim Sht As Worksheet Dim oSht As Worksheet Dim dOs As Object 'Out ...
- You Don't Know JS: this & Object Prototypes( 第3章 对象)
前2章探索了this绑定指向不同的对象需要函数引用的call-site. 但是什么是对象,为什么我们需要指向它们? 本章探索细节. Syntax the rules that describe ho ...
- 详解 Solidity 事件Event - 完全搞懂事件的使用
很多同学对Solidity 中的Event有疑问,这篇文章就来详细的看看Solidity 中Event到底有什么用? 写在前面 Solidity 是以太坊智能合约编程语言,阅读本文前,你应该对以太坊. ...
- php字符串的拆分截取
/* * strstr区分大小写 * stristr不区分大小写 * */ $str="test/abc.jpg"; echo stristr($str,'.'); echo '& ...
- mac 下配置Android sdk
1.通过homebrew进行安装 地址:https://brew.sh/index_zh-cn.html 2.homebrew install android sdk 3.找到路径如: /Users ...
- J - Jesus Is Here HDU - 5459 (递推)
大意: 定义$f_1="c",f_2="ff",f_n=f_{n-2}+f_{n-1}$, 求所有"cff"的间距和. 记录c的个数, 总长 ...
- 00-自测4. Have Fun with Numbers
Notice that the number 123456789 is a 9-digit number consisting exactly the numbers from 1 to 9, wit ...
- [CodeForces - 614D] D - Skills
D - Skills Lesha plays the recently published new version of the legendary game hacknet. In this ver ...
- Qt Widgets——工具栏和状态栏
本文主要涉及QSizeGrip ,QStatusBar ,QToolBar QToolBar 工具栏默认位于菜单栏下方,其上添加一个个action按钮,用于执行动作 绝大多谢以前都涉及过,只列出 QT ...
- 把旧系统迁移到.Net Core 2.0 日记(3) - 详解依赖注入 (转)
关于DI 依赖注入, 转载这篇文章, 写得很好的. ----------------------------- DI在.NET Core里面被提到了一个非常重要的位置, 这篇文章主要再给大家普及一下关 ...