要把sum总和,和排序完的数组,平均数average的值写到f:/dataout.txt这里面,死都写不进去,我真的是要疯了。真心求帮忙啊!!!import java.io.*;
import java.util.*;public class NumberSorter { public static void main(String[] args) {
int[] numberArray2;
try {
BufferedReader br=new BufferedReader(new FileReader("f:\\numTestData.txt"));
String r = br.readLine();
//System.out.println(r);

//读出第一行内容,然后建立一个11位的数组
int[] numberArray = new int[Integer.parseInt(r)];
//System.out.println(r);
for(int i=0; i<numberArray.length; i++){
numberArray[i] = Integer.parseInt(br.readLine());
}

//遍历数组,查看是否存了值
//debug
// for(int i: numberArray){
// System.out.println(i);
// }

numberArray2 = sort(numberArray);

//遍历数组numberArray2,查看是否存有排序过后的值
//debug
// for(int i: numberArray){
// System.out.println(i);
// }


//计算所有数之和
int sum = 0;
int average = 0;
for(int i=0; i<numberArray2.length; i++){
sum += numberArray2[i];
}

// System.out.println(sum);

average = sum/numberArray2.length;
System.out.println(average);

// f:/dataout.txt

// FileWriter writer = new FileWriter("f:/dataout.txt");
// BufferedWriter bwriter = new BufferedWriter(writer);
// bwriter.write(sum);
// for(int j = 0; j<numberArray2.length ;j++){
// String str = Integer.toString(numberArray2[j]);
// bwriter.write(str);
// System.out.println(str);
// //bwriter.newLine();
// }


} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}

//排序的方法,用了冒泡法排序
public static int[] sort(int[] numberArray){
for(int i=0;i<numberArray.length-1;i++){
for(int j=i+1;j<numberArray.length;j++){
if (numberArray[i]>numberArray[j]){
int temp=numberArray[i];
numberArray[i]=numberArray[j];
numberArray[j]=temp;
}
}
}
return numberArray;
}}

解决方案 »

  1.   

    你碰到的问题究竟是啥?另外,写文件后,记得调用 close() 函数:writer.close()
      

  2.   


    写不进去,就是数组里的内容写不进txt文件中。各种writer都试了。。
      

  3.   

    怎么可能,简单点试试看:FileWriter writer = new FileWriter("f:/dataout.txt");
    writer.write(sum + "\n");
    for(int j = 0; j<numberArray2.length ;j++){
      writer.write(j + ", ");
    }
    writer.close(); // 千万别漏这句话
      

  4.   

    911说的对. 我测试正常,代码修改如下: //bwriter.write(sum);
    bwriter.write("sum is "+Integer.toString(sum)+"\r\n"); //把sum转成字符串。
    for(int j = 0; j<numberArray2.length ;j++)
    {
    String str = Integer.toString(numberArray2[j]);
    bwriter.write(str);
    System.out.println(str);

    bwriter.newLine();
    }
    bwriter.close(); //加上这句。
      

  5.   

    Thinking  in java!不错 1000多页,楼主可以去看哈
      

  6.   


    大恩不言谢!!!3qvery much!!!
      

  7.   


    大恩不言谢!!3q very much!
      

  8.   

    LZ,你都没有write··进去,怎么读哈···
      

  9.   

    搂住在好好研究一下java io吧