为什么';这个程序没有向输出文件写入任何内容吗? 导入java.io.FileReader; 导入java.io.FileWriter; 导入java.io.BufferedReader; 导入java.io.BufferedWriter; 导入java.io.FileNotFoundException; 导入java.util.Scanner; 公开课信笺柜台 { 公共静态void main(字符串[]args)引发异常 { 字符串filename=“”; 字符串outFile=“”; FileReader fr1=null; FileWriter fw1=null; BufferedReader br1=null; BufferedWriter bw1=null; Scanner myScan=新扫描仪(System.in); 布尔值isValid=true; int[]计数=新的int[56]; 做 { 尝试 { isValid=true; System.out.print(“输入文件名:”); filename=myScan.nextLine(); fr1=新文件读取器(文件名); br1=新的缓冲读取器(fr1); } catch(filenotfounde异常) { System.out.println(“给定的文件无效。请输入另一个文件”); isValid=false; } }而(!isValid); 做 { 尝试 { isValid=true; System.out.print(“输入输出文件名:”); outFile=myScan.nextLine(); fw1=新文件写入程序(输出文件); bw1=新的缓冲写入程序(fw1); } 捕获(例外e) { System.err.println(“错误:+e.getMessage()); isValid=false; } }而(!isValid); System.out.println(“从“+文件名读取”); 尝试 { 弦线; 而((line=br1.readLine())!=null) { 系统输出打印项次(行); 对于(int i=0;i
没关系..算出了..我只是忘了关闭缓冲区..最后你忘了关闭BufferedWriter吗为什么';这个程序没有向输出文件写入任何内容吗? 导入java.io.FileReader; 导入java.io.FileWriter; 导入java.io.BufferedReader; 导入java.io.BufferedWriter; 导入java.io.FileNotFoundException; 导入java.util.Scanner; 公开课信笺柜台 { 公共静态void main(字符串[]args)引发异常 { 字符串filename=“”; 字符串outFile=“”; FileReader fr1=null; FileWriter fw1=null; BufferedReader br1=null; BufferedWriter bw1=null; Scanner myScan=新扫描仪(System.in); 布尔值isValid=true; int[]计数=新的int[56]; 做 { 尝试 { isValid=true; System.out.print(“输入文件名:”); filename=myScan.nextLine(); fr1=新文件读取器(文件名); br1=新的缓冲读取器(fr1); } catch(filenotfounde异常) { System.out.println(“给定的文件无效。请输入另一个文件”); isValid=false; } }而(!isValid); 做 { 尝试 { isValid=true; System.out.print(“输入输出文件名:”); outFile=myScan.nextLine(); fw1=新文件写入程序(输出文件); bw1=新的缓冲写入程序(fw1); } 捕获(例外e) { System.err.println(“错误:+e.getMessage()); isValid=false; } }而(!isValid); System.out.println(“从“+文件名读取”); 尝试 { 弦线; 而((line=br1.readLine())!=null) { 系统输出打印项次(行); 对于(int i=0;i,java,io,Java,Io,没关系..算出了..我只是忘了关闭缓冲区..最后你忘了关闭BufferedWriter吗 import java.io.FileReader; import java.io.FileWriter; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.util.Scanner; public class Letter_Count
import java.io.FileReader;
import java.io.FileWriter;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Letter_Counter
{
public static void main(String[] args) throws Exception
{
String filename = "";
String outFile = "";
FileReader fr1 = null;
FileWriter fw1 = null;
BufferedReader br1 = null;
BufferedWriter bw1 = null;
Scanner myScan = new Scanner(System.in);
boolean isValid = true;
int[] count = new int[56];
do
{
try
{
isValid = true;
System.out.print("Input a file name: ");
filename = myScan.nextLine();
fr1 = new FileReader(filename);
br1 = new BufferedReader(fr1);
}
catch(FileNotFoundException e)
{
System.out.println("Invalid filenme given. Input another.");
isValid = false;
}
}while(!isValid);
do
{
try
{
isValid = true;
System.out.print("Input an out file name: ");
outFile = myScan.nextLine();
fw1 = new FileWriter(outFile);
bw1 = new BufferedWriter(fw1);
}
catch(Exception e)
{
System.err.println("Error: "+e.getMessage());
isValid = false;
}
}while(!isValid);
System.out.println("Reading from "+filename);
try
{
String line;
while((line = br1.readLine()) != null)
{
System.out.println(line);
for(int i=0; i<line.length(); i++)
{
for(int j=97; j<123; j++)
{
if((int)line.charAt(i)==j)
{
count[j-97]++;
}
}
for(int k=65; k<91; k++)
{
if((int)line.charAt(i)==k)
{
count[k-38]++;
}
}
}
}
}
catch(Exception e)
{
System.err.println("Error: "+e.getMessage());
}
try
{
char c = 'A';
for(int i=26; i<52; i++)
{
bw1.write(c+"="+count[i]);
System.out.println(c+"="+count[i]);
bw1.newLine();
c++;
}
c = 'a';
for(int i=0; i<26; i++)
{
bw1.write(c+"="+count[i]);
System.out.println(c+"="+count[i]);
bw1.newLine();
c++;
}
}
catch(Exception e)
{
System.err.println(e.getMessage());
}
System.out.println("Results stored in "+outFile);
}
}
只需输入/输出正确的文件名路径。 然后像这样在belwo的地方关闭fw1
bw1.close();
System.out.println("Results stored in "+outFile);
fw1.close();