实验目标:
掌握Java输入输出类;掌握Java输入输出特点;掌握Java输入输出编程方法。
实验要求:
编写一个程序,程序实现对用户指定的文本文件中的英文字符和字符串的个数进行统计的功能,并将结果根据用户选择输出至结果文件或屏幕。
1.构建统计类,该类实现对I/O的操纵;实现对文本文件中英文字符、字符串的统计;实现对统计结果的输出。
2.构建测试类,该类实现与用户的交互,向用户提示操作信息,并接收用户的操作请求。
程序应具有良好的人机交互性能,即:程序应向用户提示功能说明,并可根据用户的功能选择,执行对应的功能,并给出带详细描述信息的最终执行结果。
代码如下:
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
/**
* Created by lenovo on 2016-12-24.
*/
import java.io.BufferedReader;
import java.io.FileReader;
public class Test
{
public static void main(String[] args)
{
String url = "D:/BeanBean.txt";
File file = new File(url);
if (!file.exists() || file.isDirectory())
{
System.out.println("File is not exit!");
return;
}
StringBuffer a = null;
BufferedReader br;
try
{
br = new BufferedReader(new FileReader(file));
String temp = null;
a = new StringBuffer();
temp = br.readLine();
while (temp != null)
{
a.append(temp + "\r");
temp = br.readLine();
}
}
catch (Exception e)
{
e.printStackTrace();
}
String info = a.toString();
int num = 0;
int space = 1;
System.out.println("Contents of \"BeanBean.txt\" is : ");
System.out.println(info.toString());
for (int i = 0; i < info.length(); i++)
{
if (info.charAt(i)>=65 && info.charAt(i)<=90||
info.charAt(i)>=97 && info.charAt(i)<=122)
{
num++;
}else if(info.charAt(i) == 32)
{
space ++;
// num ++;
}
}
System.out.println("Characters' number of File : " + num);
System.out.println("Strings' number of File : " + space);
}
}