求java 程序 要求:读取txt文件,文件里面有很多行数字,然后输出每一行里面,各位数字的和 例

求java 程序
要求:读取txt文件,文件里面有很多行数字,然后输出每一行里面,各位数字的和
例如:
文件:23
496
输出:5
19

要求运用 file i/o, string, try/catch

谢谢大神!

Java程序如下:

import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;


public class HardWork {
public static void main(String[] args) {
try {
FileInputStream fis = new FileInputStream("c:\\test.txt");
InputStreamReader isr = new InputStreamReader(fis);
BufferedReader br = new BufferedReader(isr);
String line;
int sum;
int i;

while((line = br.readLine()) != null) {
sum = 0;
for(i=0; i<line.length(); i++) {
sum += line.charAt(i) - '0';
}
System.out.println(sum);
}
}
catch(Exception e) {
e.printStackTrace();
}
}
}


运行测试:

5

19


文件内容:

23

496

追问

请问再加什么能既显示文件内容,又显示结果呢

追答

修改后的Java程序:

import java.util.ArrayList;
  
public class HardWork {
    public static void main(String[] args) {
        try {
            ...
            ArrayList<Integer> list = new ArrayList<Integer>();
                        
            System.out.println("文件内容:");
            while((line = br.readLine()) != null) {
             System.out.println(line);
                sum = 0;
                for(i=0; i<line.length(); i++) {
                    sum += line.charAt(i) - '0';
                }
                list.add(sum);
            }
            
            System.out.println("计算结果:");
            for(i=0; i<list.size(); i++) {
             System.out.println(list.get(i) + " ");
            }
        }
        catch(Exception e) {
            e.printStackTrace();
        }
    }
}追问

谢谢大神!!

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-06
public class Test{

 public static void main(String... args){

  File file = new File("d:\\test.txt");

  BufferedReader br = null;

  try {

   br = new BufferedReader(new FileReader(file));

   String temp;

   while((temp=br.readLine())!=null){

    int n = temp.length();

    int num = Integer.parseInt(temp);

    int sum = 0;

    for(int i=0;i<n;i++)

     sum+=(int)num/Math.pow(10, i)%10;

    System.out.println(sum);

   }

  } catch (Exception e) {

   e.printStackTrace();

  }finally{

   try {

    br.close();

   } catch (IOException e) {

    e.printStackTrace();

   }

  }

 }

}

追问

请问再加什么能既显示文件内容,又显示结果呢