import java.io.*;
public class TryReadFile
{
public static void main(String args[])
{
byte[] info=new byte[8];
String dirName="d:/test";
String fileName="test.txt";
try
{
File dirObject=new File(dirName);//创建目录对象
File fileObject=new File(dirObject,fileName);//创建文件对象
FileInputStream inputFile=new FileInputStream(fileObject);//创建输入流对象
inputFile.read(info);//将test文件中的内容读到数组中去
inputFile.close(); //关闭文件
}
catch(FileNotFoundException e)
{
System.out.println("FileNotFoundException"+e+" occured.");
}
catch(IOException e)
{
System.out.println("IOException"+e+" occured.");
}
for(int i=0;i<info.length;i++)
System.out.print((char)info[i]+" ");
System.out.println();
//怎么在这里对字母的出现频率进行统计???}其中test.txt中的的字母(假设)是 a,c,d,a,b,c,b,d
public class TryReadFile
{
public static void main(String args[])
{
byte[] info=new byte[8];
String dirName="d:/test";
String fileName="test.txt";
try
{
File dirObject=new File(dirName);//创建目录对象
File fileObject=new File(dirObject,fileName);//创建文件对象
FileInputStream inputFile=new FileInputStream(fileObject);//创建输入流对象
inputFile.read(info);//将test文件中的内容读到数组中去
inputFile.close(); //关闭文件
}
catch(FileNotFoundException e)
{
System.out.println("FileNotFoundException"+e+" occured.");
}
catch(IOException e)
{
System.out.println("IOException"+e+" occured.");
}
for(int i=0;i<info.length;i++)
System.out.print((char)info[i]+" ");
System.out.println();
//怎么在这里对字母的出现频率进行统计???}其中test.txt中的的字母(假设)是 a,c,d,a,b,c,b,d
++count[(int)info[i]-(int)'a'];
++count[(int)info[i]-(int)'a']; ???能不能解释下,你这里好象是统计字母的出现频率,但是输出不好写,难道要我从a字母到z字母写出它们所有的出现次数
a:2
b:2
c:2
d:1
e:1
那输出就不好写了吧
public class TryReadFile
{
public static void main(String args[])
{
byte[] info=new byte[8];
String dirName="d:/test";
String fileName="test";
try
{
File dirObject=new File(dirName);//创建目录对象
File fileObject=new File(dirObject,fileName);//创建文件对象
FileInputStream inputFile=new FileInputStream(fileObject);//创建输入流对象
inputFile.read(info);//将test文件中的内容读到数组中去
inputFile.close(); //关闭文件
}
catch(FileNotFoundException e)
{
System.out.println("FileNotFoundException"+e+" occured.");
}
catch(IOException e)
{
System.out.println("IOException"+e+" occured.");
}
for(int i=0;i<info.length;i++)
System.out.print((char)info[i]+" ");
System.out.println(); int[] count = new int[26];
int[] n=new int[26];
for(int i=0;i<info.length;i++)
++count[(int)info[i]-(int)'a'];
for(int i=0;i<26;i++)
{
n[i]=i;
System.out.println("字母"+(char)(n[i]+97)+"出现的个数: "+count[i]);
}
}
}只能处理全部是小写字母的情况,如果有大写字母或其它符号在内,有该怎么处理呢?
望指教