강의로 돌아가기
-

답좀 알려주세요 . ..

합이틀렸다고나오네요ㅠㅠ

작성중인 코드―DataInputStreamExam.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.io.*;

public class DataInputStreamExam{
  public static int read3(){
    int sum = 0;
    //data.txt로부터 int값 3개를 읽어들여서 sum에 더하세요.

   try(DataInputStream dis = new DataInputStream(new FileInputStream("data.txt"));)
   {
        sum = sum + dis.readInt();

  } catch(Exception e){}

    //아래는 테스트를 위한 코드입니다. 수정하지 마세요.     
    return sum;
  }
}
작성중인 코드―MainRunner.java
1
2
3
4
5
6
//아래는 실행을 위한 코드입니다. 수정하지 마세요.
public class MainRunner {
    public static void main(String[] args) {
        DataInputStreamExam ex = new DataInputStreamExam();
    }
}
2 개의 답변
-

try(DataInputStream dis=new DataInputStream(new FileInputStream(data.txt));)
{
int num=-1;
while((num=dis.readInt())!=-1)
{
sum+=num;
}
}
catch(Exception e)
{
}

-

import java.io.*;

public class DataInputStreamExam {
public static int read3() {
int sum = 0;
int a = 0;
// data.txt로부터 int값 3개를 읽어들여서 sum에 더하세요.
FileInputStream fis = null;
DataInputStream dis = null;

    try {
        fis = new FileInputStream("data.txt");
        dis = new DataInputStream(fis);
        int readData = 0;
        while (a<3) {
    readData = dis.readInt();
            sum += readData;
    a++;
        }
    } catch (Exception e) {
        e.printStackTrace();
    } finally {
        try {
            if (dis != null) {
                dis.close();
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
        return sum;
    }
}

}

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.