PGR21.com
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
Date 2013/02/06 15:22:39
Name 오토모빌굿
Subject 자바고수님들의 도움 부탁드립니다.
텍스트 파일을 읽고 그 파일의 숫자들을 정렬을 하는 코드를 짜고 있습니다.
코드를 짰습니다만 자꾸 error: for input string : 텍스트파일의 숫자들 이 뜨는군요.
어느 부분이 잘못되었는지 가르침을 부탁드립니다.

제 코드는
import java.io.*;
import java.util.ArrayList;


public class Main {

    public static void main(String[] args) {
        try {
            // Open the file that is the first
            // command line parameter
            FileInputStream fstream = new FileInputStream("values1.txt");
            BufferedReader br = new BufferedReader(new InputStreamReader(fstream));

            ArrayList<Integer> list = new ArrayList<Integer>();
            String strLine;

            //Read File Line By Line
            while ((strLine = br.readLine()) != null) {
                // Print the content on the console
                System.out.println(strLine);
                list.add(Integer.parseInt(strLine));    // list에 저장
            }

            //Close the input stream
            br.close();

            Integer[] array = new Integer[list.size()];
            list.toArray(array);        // 배열로 저장

            // 정렬
            for (int i = 0; i < array.length - 1; i++) {
                for (int j = i + 1; j < array.length; j++) {
                    if (array[i] > array[j]) {
                        int temp = array[i];
                        array[i] = array[j];
                        array[j] = temp;
                    }
                }
            }

            System.out.println("출력");
            for (int k = 0; k < array.length; k++) {
                System.out.print(array[k] + " || ");
            }

            // 다르게

//            // 정렬
//            for (int i = 0; i < list.size() - 1; i++) {
//                for (int j = i + 1; j < list.size(); j++) {
//                    if (list.get(i) > list.get(j)) {
//                        int temp = list.get(i);
//                        list.set(i, list.get(j));
//                        list.set(j, temp);
//                    }
//                }
//            }
//
//            System.out.println("출력");
//            for (int k = 0; k < list.size(); k++) {
//                System.out.print(list.get(k) + " || ");
//            }
        }
        catch (Exception e) {//Catch exception if any
            System.err.println("Error: " + e.getMessage());
        }

        System.out.println();
    }
}

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
13/02/06 15:37
수정 아이콘
value1.txt 파일에 숫자 아닌 문자도 있어서 그래요.
숫자만 걸러내는 로직을 추가하시거나 value1.txt파일을 숫자로만 수정하시면 되실겁니다.
readLine()으로 한 라인별로 읽어들이는데 혹 숫자를 4 5 6 이런식으로 중간에 빈공백이 들어가시면 공백제거하셔야됩니다
오토모빌굿
13/02/06 15:39
수정 아이콘
텍스트파일 몽땅 숫자로 넣어도 같은 오류가 뜨네요 ㅠㅠ

간단하게 3 21 2 라고 적힌 텍스트로 실험해봐도

error: for input string: 3 21 2
라고 나옵니다.
13/02/06 15:41
수정 아이콘
readLine으로 한라인별로 읽으셔서 그래요.
3
21
2
이런식으로 txt파일 수정하시면 되실거에요.
오토모빌굿
13/02/06 15:50
수정 아이콘
아 그렇군요. 감사합니다!

텍스트파일이 한줄씩이 아닌 일렬로 늘어져 있고 수정이 불가한 경우는 어떤식으로 고쳐줘야할까요?
Red_alert
13/02/06 15:56
수정 아이콘
tokenizer를 이용해서 text를 잘라야됩니다.
System.out.println(strLine);
StringTokenizer st = new StringTokenizer(strLine);
while (st.hasMoreTokens())
list.add(Integer.parseInt(st.nextToken()); // list에 저장

이런식으로 해보세요.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
159814 조카들 세뱃돈. 제가 몇살이 되어야 주는건가요? [13] honnysun2516 13/02/06 2516
159813 아버지 생신선물 질문입니다. [5] 더미짱2263 13/02/06 2263
159812 스타2 래더시스템 질문. [8] Aristo1822 13/02/06 1822
159811 취업) 학점 관련 문의입니다. [3] 삼신2365 13/02/06 2365
159810 카스퍼스키 퓨어 질문 드립니다. 천재여우1633 13/02/06 1633
159809 [확밀아] 질문드립니다. [5] kaz1560 13/02/06 1560
159808 [LOL]굶주린 히드라 좋지 않나요? [9] High-End4122 13/02/06 4122
159807 혹시 지금 폰 안터지시는 분 있나요? [6] 은하관제1680 13/02/06 1680
159804 찾고 싶은 영상 또는 정체가 알고 싶습니다! ruin1826 13/02/06 1826
159803 유투브 동영상볼때 질문이요 [5] par333k2068 13/02/06 2068
159802 PS3 화면을 노트북으로 볼 수 있을까요? [1] Neuschwanstein3925 13/02/06 3925
159801 자바고수님들의 도움 부탁드립니다. [5] 오토모빌굿1633 13/02/06 1633
159800 어플 개발하시는 피잘려분들께... [3] 넛흐1581 13/02/06 1581
159799 방금 핸드폰에서 태그 납치 됐었습니다. [3] 허느2327 13/02/06 2327
159798 피쳐폰게임을 스마트폰에서못하나요?? [3] alswnd8135950 13/02/06 5950
159797 싱가포르 항공권 구입관련 질문입니다. [1] 삿짱z4596 13/02/06 4596
159796 미국은 우리나라처럼 온가족이 다 모이는 명절이 없죠? [6] 아레스2235 13/02/06 2235
159795 빛돌님이랑 단군님은 카오스실력이 어느정도였나요? [8] 설아4029 13/02/06 4029
159794 A row of gas pumps are under a roof. 라는 문장에 대한 잴문입니다. [5] 강호동1564 13/02/06 1564
159793 강일IC에서 부천종합운동장까지 가는 최적의 방법은 무엇인지요? [6] ComeAgain1888 13/02/06 1888
159792 옵쥐랑 옵뷰2의 장단점 [4] luvsic1870 13/02/06 1870
159791 [LOL] 게임하면서 가장 웃겼던 드립이 뭔가요? [23] 미됸3058 13/02/06 3058
159790 도서관예절 질문입니다. [15] Made.in.Korea1861 13/02/06 1861
목록 이전 다음
댓글

+ : 최근 6시간내에 달린 댓글
+ : 최근 12시간내에 달린 댓글
맨 위로