You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java代码无报错运行提示进程结束但无输出如何解决

Java代码无输出问题修复方案

根因定位

  • 空catch块吞噬异常:你当前代码的catch(IOException ex) {}逻辑为空,所有IO相关异常(比如文件权限不足、路径实际不匹配、文件被占用等)都会被直接吞掉,不会输出任何报错信息,也不会执行try块里的打印逻辑,最终只会显示进程结束。
  • 次要冗余问题:filename本身是字符串类型,filename.toString()属于无效冗余调用,不过该问题不影响程序运行。

修复代码

使用try-with-resources语法自动管理流资源,同时在catch块中添加异常打印逻辑,方便定位具体问题:

import java.nio.file.*;
import java.io.*;

public class GuessingGame {
    public GuessingGame() {
        // 用正斜杠写Windows路径可以避免转义错误,兼容性更好
        String filename = "C:/Users/angela/Documents/words.txt";
        Path path = Paths.get(filename);
        
        try (InputStream input = Files.newInputStream(path);
             BufferedReader read = new BufferedReader(new InputStreamReader(input))) {
            
            String word = null;
            while((word = read.readLine()) != null) {
                System.out.println(word);
            }
        } catch(IOException ex) {
            // 打印异常栈,直接看到具体错误原因
            ex.printStackTrace();
        }
    }
    public static void main (String[] args) {
        new GuessingGame();
    }
}

后续排查建议

如果修改后还是没有输出,按以下步骤排查:

  • 确认words.txt文件本身不是空文件
  • 在Path path = Paths.get(filename);后添加System.out.println(path.toAbsolutePath());,打印实际解析的路径和你本地文件路径核对是否完全一致
  • 检查运行Java程序的账号是否有读取该路径下文件的权限

内容的提问来源于stack exchange,提问作者Bored AsFucc

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 03:27:01