java小程序错误Exception in thread "main" java.lang.NullPointerException at sNum.main(sNum.java:14)

百度了好久也没弄出来,向大神求助importjava.io.BufferedReader;importjava.io.FileReader;publicclasssNum... 百度了好久也没弄出来,向大神求助
import java.io.BufferedReader;
import java.io.FileReader;
public class sNum {
public static void main(String[] args)throws Exception {
//读取文件
FileReader fr=new FileReader("C:\\ihaveadream.txt");
BufferedReader br=new BufferedReader(fr);
double snum=0,sum=0;
while(br.readLine()!=null){
String str=br.readLine();
//每隔随机数个字符长度读入字符并判断‘s’
for(int i=0;i<str.length();i+=Math.random()*10)
{
char c=str.charAt(i);
if(c=='s')
snum++;
sum++;
}
//当读取了1000个字符时跳出循环
if(sum>1000)
break;
}
//计算并输出字符's'百分比
double a=snum/sum*100;
System.out.println("The percent of the number of s is:"+ a +"%");
br.close();
}
}
展开
 我来答
紫薇参星
科技发烧友

2013-11-13 · 有一些普通的科技小锦囊
知道大有可为答主
回答量:5983
采纳率:92%
帮助的人:3604万
展开全部
你的程序我帮你改完了,你看看吧.
完整的程序如下:
import java.io.BufferedReader;
import java.io.FileReader;
public class sNum {
public static void main(String[] args)throws Exception {
//读取文件
FileReader fr=new FileReader("C:\\ihaveadream.txt");
BufferedReader br=new BufferedReader(fr);
int snum=0,sum=0;
String str="";
while((str=br.readLine())!=null){
//每隔随机数个字符长度读入字符并判断‘s’
for(int i=0;i<str.length();i+=(int)(Math.random()*10))
{
char c=str.charAt(i);
if(c=='s')
snum++;
sum++;
}
//当读取了1000个字符时跳出循环
if(sum>1000)
break;
}
//计算并输出字符's'百分比
double a=(double)snum/sum*100;
System.out.println("The percent of the number of s is:"+ a +"%");
br.close();
}
}
百度网友7751373
2013-11-13 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:114
采纳率:50%
帮助的人:50.2万
展开全部
public class sNum{} 这个程序的 文件名 要是 sNum.java
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式