gpt4 book ai didi

java - "File missing! "USACO Java 程序错误

转载 作者:行者123 更新时间:2023-12-01 19:22:53 25 4
gpt4 key购买 nike

我收到一条错误消息,提示我的文件作为标准问题丢失。我已经关闭了刷新 FileReader 的文件,使问题变得更加模糊。我尝试使用 BufferedWriter、FileOutputStream 和 DataOutputStream 尝试不同的输出方法。输出是正确的,因为它与所有给定的测试用例相匹配。任何输入都有帮助。谢谢。

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

BufferedReader br = new BufferedReader(new FileReader("mixmilk.in"));
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter("mixmilk.out")));
StringTokenizer st = new StringTokenizer(br.readLine());

int c1 = Integer.parseInt(st.nextToken());
int m1 = Integer.parseInt(st.nextToken());
st = new StringTokenizer(br.readLine());
int c2 = Integer.parseInt(st.nextToken());
int m2 = Integer.parseInt(st.nextToken());
st = new StringTokenizer(br.readLine());
int c3 = Integer.parseInt(st.nextToken());
int m3 = Integer.parseInt(st.nextToken());

if (m1 + m2 <= c2) {
m2 = m1 + m2;
m1 = 0;
}
else {
while (m2 < c2) {
m2++;
m1--;
}
}

if (m2 + m3 <= c3) {
m3 = m2 + m3;
m2 = 0;
}
else {
while (m3 < c3) {
m3++;
m2--;
}
}

if (m3 + m1 <= c1) {
m1 = m3 + m1;
m3 = 0;
}
else {
while (m1 < c1) {
m1++;
m3--;
}
}

if (m1 + m2 <= c2) {
m2 = m1 + m2;
m1 = 0;
}
else {
while (m2 < c2) {
m2++;
m1--;
}
}

System.out.println(m1);
System.out.println(m2);
System.out.println(m3); //what im printing to the file
pw.println(m1);
pw.println(m2);
pw.println(m3);
pw.println("\n"); // recommended due to new UNIX environment for grading servers
pw.close();
}

}

最佳答案

您没有提供足够的信息(堆栈跟踪、错误消息、示例输入等),因此我将不得不进行大量猜测(!!)

“丢失文件”错误可能是由以下原因引起的

new FileReader("mixmilk.in")

new FileWriter("mixmilk.out")

假设#1:我假设您没有提供堆栈跟踪,因为根本没有。

假设#2:您的应用程序本身不会输出“文件丢失!”的错误消息,因此我假设它一定来自测试工具;即运行您的代码并测试输出的代码

假设#3:测试工具将提供自己的输入文件,因此不太可能提示文件丢失。因此,它一定会提示找不到您的应用程序应该写入的文件。

这意味着new FileWriter("mixmilk.out")是错误的。以下是一些可能性:

  • 您使用了错误的文件名;例如也许文件扩展名不正确,或者文件名应该是“MixMilk.out”之类的。 (请注意,Linux/UNIX 文件名区分大小写。)

  • 您的应用程序将尝试将文件写入当前目录。也许这是不正确的。也许应该把它写在别的地方;例如临时目录。

  • 也许您的应用程序根本不应该读取和写入文件。也许它应该读取和写入标准输入/输出?也许文件名/路径名应该是命令行参数?

所有这些事情都归结为您没有完全理解作业的要求。 (我只能猜测......因为你没有包含要求!)

<小时/>

另一种可能性是您的问题中的某些信息不准确。例如,我假设 1) 错误消息是“文件丢失!”就像您告诉我们的那样,2)没有堆栈跟踪...因为当有人要求您添加堆栈跟踪时您没有响应!

最后一种可能性是问题出在测试工具中(即错误)或者需求不明确。与其他做作业的学生交谈。

关于java - "File missing! "USACO Java 程序错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59340778/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com