java 读取文件 并计算文件的字节数,单词数和行数? 求高人指点,谢谢
读取一个文件并且计算这个文件有多少字节,单词和行.不能用FileReader和BufferedReader.............我个人现在比较倾向于scanner.我...
读取一个文件并且计算这个文件有多少字节,单词和行. 不能用FileReader 和BufferedReader ............. 我个人现在比较倾向于scanner.
我觉得开头是
File sample = new File();
Scanner scan = new Scanner (sample);
......
求大神指教,好的追分,谢谢!!! 展开
我觉得开头是
File sample = new File();
Scanner scan = new Scanner (sample);
......
求大神指教,好的追分,谢谢!!! 展开
3个回答
展开全部
话不多说先上代码
Scanner sc = new Scanner(f);
int i = 0, j=0, k=0;
while(sc.hasNext()) {
sc.next();
i++;
}
sc = new Scanner(f);
while(sc.hasNextLine()) {
sc.nextLine();
j++;
}
sc = new Scanner(f);
while(sc.hasNextByte()) {
sc.nextByte();
k++;
}
System.out.println(i+" "+j+" "+k);
然后区分一下字节和字符的概念,一个字节是一个8位的2进制数,一个字符是'a'、'1'这种
楼主是不是说的统计字符呢
scanner类中并没有统计字符的方法 用filereader貌似方便一点
这是只是提供一个思路,多查api文档,多用google,这类问题都不叫问题。
搜到这段代码后,我表示很惭愧
public class Test {
public static void main(String[] args) throws Exception{
Scanner input=new Scanner(System.in);
System.out.println("请输入路径");
String path=input.next();
int charNum= 0 ;
int wordsNum= 0;
int lineNum = 0;
InputStreamReader isr = new InputStreamReader(new FileInputStream(path));
BufferedReader br = new BufferedReader(isr);
while( br.read()!= -1){
String s = br.readLine();
charNum+=s.length();
wordsNum +=s.split(" ").length;
lineNum ++;
}
isr.close();//关闭
System.out.println("字符数:"+charNum+"\t单词数:"+wordsNum+"行 数:"+lineNum);
}
}
Scanner sc = new Scanner(f);
int i = 0, j=0, k=0;
while(sc.hasNext()) {
sc.next();
i++;
}
sc = new Scanner(f);
while(sc.hasNextLine()) {
sc.nextLine();
j++;
}
sc = new Scanner(f);
while(sc.hasNextByte()) {
sc.nextByte();
k++;
}
System.out.println(i+" "+j+" "+k);
然后区分一下字节和字符的概念,一个字节是一个8位的2进制数,一个字符是'a'、'1'这种
楼主是不是说的统计字符呢
scanner类中并没有统计字符的方法 用filereader貌似方便一点
这是只是提供一个思路,多查api文档,多用google,这类问题都不叫问题。
搜到这段代码后,我表示很惭愧
public class Test {
public static void main(String[] args) throws Exception{
Scanner input=new Scanner(System.in);
System.out.println("请输入路径");
String path=input.next();
int charNum= 0 ;
int wordsNum= 0;
int lineNum = 0;
InputStreamReader isr = new InputStreamReader(new FileInputStream(path));
BufferedReader br = new BufferedReader(isr);
while( br.read()!= -1){
String s = br.readLine();
charNum+=s.length();
wordsNum +=s.split(" ").length;
lineNum ++;
}
isr.close();//关闭
System.out.println("字符数:"+charNum+"\t单词数:"+wordsNum+"行 数:"+lineNum);
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询