代码如下:
package 检测;
import java.io.*;
public class Main {
public static void main(String[] args) throws IOException {
char ch1;
int ch2;
int numa=0,nume=0,numi=0,numo=0,numu=0;
File file1=new File("D:\\文件用\\JAVA练习\\file1.txt");
try{
FileOutputStream fout=new FileOutputStream(file1);
System.out.println("输入你所需要检测的语段,以?结束:");
ch1=(char) System.in.read();
while(ch1!='?')
{
fout.write(ch1);
ch1=(char) System.in.read();
}
fout.close();
}
catch(FileNotFoundException e)
{
System.out.println(e);
}
catch(IOException e)
{
System.out.println();
}
File file2=new File("D:\\文件用\\JAVA练习\\file1.txt");
try
{
FileInputStream fin=new FileInputStream(file2);
ch2=(char) fin.read();
while(ch2!=-1)
{
switch(ch2)
{
case'a':numa=numa+1;break;
case'e':nume=nume+1;break;
case'i':numi=numi+1;break;
case'o':numo=numo+1;break;
case'u':numu=numu+1;break;
}
}
fin.close();
}
catch(FileNotFoundException e)
{
System.out.println(e);
}
catch(IOException e)
{
System.out.println();
}
System.out.println("文段里面a有:"+numa+"个;"
+"文段里面e有:"+nume+"个;"
+"文段里面i有:"+numi+"个;"
+"文段里面o有:"+numo+"个;"
+"文段里面u有:"+numu+"个");
}
}
我想问的就是...我希望可以我在键盘输入一段字符
跟着下面的input那读取我存字符的文件file1 来判断里面 a,e,i,o,u的个数
如果while(ch2!=-1)
加上了就会造成 CPU占用100% 表示死循环了吧?
我用while(ch2!=-1)是希望可以循环读取 知道完毕
但是这种方法不行,那么用什么方法才可以呢?