Arro27
2021-05-23 13:18
采纳率: 100%
浏览 17

主类调用其他类File的方法 没有输出

Document类:


import java.util.*;
import java.io.*;
public class Document {
    File infile;

    public Document(){}

    public Document(File infile) {
        this.infile = infile;
    }

    
    public int countLines(File infile)throws Exception{
        int lines = 0;
        Scanner input = new Scanner(infile);

        while(input.hasNextLine()){
            lines++;
        }

        input.close();
        return lines;
    }
    
    
}

主类:



import java.io.*;


public class TestDocument {
    public static void main(String[]args)throws Exception{

        File file = new File("C:/Users/Administrator/Desktop/SSK3101/LAB6/test.txt");

        Document dc = new Document(file);

        System.out.print(dc.countLines(file));
    }
}
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • CSDN专家-三岁丫 2021-05-23 14:34
    已采纳
        while (input.hasNextLine()) {
          input.nextLine();
          lines++;
        }

    一定要加一行 input.nextLine(),相当于你一直在问小卖铺"你有棒棒糖吗?",但是你又不买,所以别人就会一直说"有",程序就不会终止了。所以你问了是不是还有下一行之后,就必须要读一行。

    1 打赏 评论
  • while(input.hasNextLine()){
                lines++;
            }

    改为

    while(input.hasNextLine()){
        System.out.println(input.nextLine());
        lines++;
    }
    打赏 评论
  • CSDN专家-三岁丫 2021-05-23 15:40

    如果觉得我的回答有帮助到您,可以点个采纳支持一下。

    打赏 评论
  • 有问必答小助手 2021-05-27 15:18

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    打赏 评论

相关推荐 更多相似问题