package day6.lab3;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.ArrayList;
import day6.lab2.FileController;
public class FileCalculator {
public static void main(String[] args) throws Exception {
new FileCalculator().addCalculateResult("src/day6/lab3/source.txt");
}
void addCalculateResult(String inputFileName) throws Exception{
FileReader fr = new FileReader(inputFileName); //파일읽기
BufferedReader br = new BufferedReader(fr); // 버퍼에 읽기
//다 읽고 반납할 수 있도록 구현해야됨 -> 저장공간 필요
FileWriter fw = new FileWriter(inputFileName, true); //파일 쓰기, true=기존의 파일에 append함
BufferedWriter bw = new BufferedWriter(fw); //버퍼로 쓰기
ArrayList<String> list = new ArrayList<String>(); // arraylist 객체 선언
String s = null;
while((s = br.readLine()) != null){ //마지막이 아닐때까지 계속 돌아라
list.add(s); //list에 s의 내용을 넣는다
}
br.close();
fr.close(); //br, sr 닫음
int sum = 0;
int mul = 1;
for(String item : list){
sum += Integer.parseInt(item);
mul *= Integer.parseInt(item);
}
bw.newLine();
bw.write(sum+""); //문자열로 저장하기 위해 ""을 넣어 String 값으로 찍음
bw.newLine();
bw.write(mul+"");
bw.close(); //자원반납
fw.close();
}
}
/*void reverseLine(String inputFileName, String outputFileName) throws Exception
{
Collections.reverse(list); //내용 뒤집는 함수
for(String ss :list){
System.out.println(ss);
} // 뒤집어서 읽기
//뒤에서부터 읽기
for(int i = list.size()-1; i>=0; i--){
System.out.println(list.get(i));
bw.write(list.get(i)); //버퍼의 내용으로 파일에 쓰기
bw.newLine(); //줄바꾸기
}
}
public static void main(String[] args) throws Exception {
new FileController().reverseLine("src/day6/lab2/input.txt", "src/day6/lab2/output.txt"); //객체 선언과 메서드사용
}*/
'Computer > JAVA' 카테고리의 다른 글
Java Thread (0) | 2014.08.29 |
---|---|
Java Network (0) | 2014.08.29 |
Java FileController (0) | 2014.08.29 |
Java IO (0) | 2014.08.29 |
Java FileCompare (0) | 2014.08.29 |