尝试用java写读写文件会导致输出文件为空
我有一个文件“a.txt”,它由60行组成。每行包含一个从1到60的数字。我还有一个文件夹DD,其中包含两个文件,分别标记为“DD1.txt”和“DD2.txt” 文件DD1有3行。DD1的每一行都有1.1、1.2和1.3。类似地,文件DD2也有3行。DD2的每一行都有2.1、2.2、2.3 我要做的是首先读取A.txt的第一行,它使用DD1的所有行计算并写入计算值,使用DD2的所有行计算并写入输出值。因此,我有60 X 2=120个文件要创建。每个文件应该有2行。但我得到的只有2个文件,其中目前是空白的 这就是我迄今为止所尝试的尝试用java写读写文件会导致输出文件为空,java,Java,我有一个文件“a.txt”,它由60行组成。每行包含一个从1到60的数字。我还有一个文件夹DD,其中包含两个文件,分别标记为“DD1.txt”和“DD2.txt” 文件DD1有3行。DD1的每一行都有1.1、1.2和1.3。类似地,文件DD2也有3行。DD2的每一行都有2.1、2.2、2.3 我要做的是首先读取A.txt的第一行,它使用DD1的所有行计算并写入计算值,使用DD2的所有行计算并写入输出值。因此,我有60 X 2=120个文件要创建。每个文件应该有2行。但我得到的只有2个文件,其中目
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.InputStreamReader;
public class Sample {
private static final String FILEA = "E:\\SP\\A.txt";
private static String FILEH = "E:\\SP\\DD\\DD";
private static String FILER = "E:\\SP\\Result\\Result";
private static final String FILEEXE = ".txt";
private static BufferedReader br = null, br1 = null, br2 = null;
private static BufferedWriter bw = null;
private static FileWriter fw = null;
public static void main(String[] args) throws NumberFormatException,IOException, InterruptedException
{
final double C1 = -3.75, C2 = 1.14;
double T = 0, R = 0, E = 0, Efficiency = 1;
System.out.println("Enter the value of Efficiency:");
br = new BufferedReader(new InputStreamReader(System.in));
Efficiency = Double.parseDouble(br.readLine());
try {
String sCurrentLine, sCurrentLine1, sCurrentLine2;
int i = 0;
br1 = new BufferedReader(new FileReader(FILEA));
while ((sCurrentLine = br1.readLine()) != null)
{
i++;
String FILEH1 = FILEH + i + FILEEXE;
String FILER1 = FILER + i + FILEEXE;
br2 = new BufferedReader(new FileReader(FILEH1));
bw = new BufferedWriter(new FileWriter(FILER1));
int count = 0;
while ((sCurrentLine1 = br2.readLine()) != null)
{
T = Double.parseDouble(sCurrentLine1);
R = Double.parseDouble(sCurrentLine);
E = R * 24 * (T * 0.024);
bw.write(Double.toString(E));
bw.newLine();
}
}
} catch (Exception e2) {
// TODO: handle exception
}//end trycatch
}
}
在while循环中进行计算后,请尝试bw.write(“\r\n”);然后在while循环之后,尝试将write作为bw.close()关闭;希望这对你有用
bw.write(Double.toString(E));
bw.write("\r\n");
}
bw.close();
在内部
完成后尝试关闭bw
对象,同时
也不要沉默吞咽异常,可能会有一个很大的提示there@ScaryWombat是的,我试过关闭bw,但当我关闭bw时,它创建了一个文件并停止了。异常是怎么说的?@ScaryWombat哦,不。它要求的是DD3.txt,我只有DD1和DD2。(系统找不到指定的文件)在java.io.FileInputStream.open(本机方法)在java.io.FileInputStream。(未知源)在java.io.FileInputStream。(未知源)在java.io.FileReader。(未知源)在Sample.main(Sample.java:39)感谢您的解决方案。但我已经通过对循环做一些更改解决了这个问题,并且在每次写入后对bw.close()做了一些修改。