2012-05-21 4 views
1

파일 내용을 읽는 프로그램을 작성했습니다.파일 내용 읽기

import java.io.*; 

public class FileLineReader { 
    public static void main(String args[]) { 
    try { 
     FileReader reader = 
      new FileReader("C:\\Users\\sriram\\Documents\\Java Programs\\" + 
         args[0]); 
     BufferedReader buffer = new BufferedReader(reader); 
     String fileContent; 
     while ((fileContent = buffer.readLine()) != null) { 
     System.out.println(fileContent); 
     } 
    } catch(Exception e) { 
     e.printStackTrace(); 
    } 
    } 
} 

기본적으로 특정 폴더에서 내용을 읽습니다. Java 프로그램의 .class 파일 인 FileLineReader.class을 입력하면 프로그램에서 바이트 코드를 출력하지만 경고음이 들립니다. 다른 모든 파일의 경우 출력이 적절하게 제공됩니다.

아무도 말해 줄 수 있습니까?

+4

1) 코드 블록에 대해 일관성 있고 논리적 인 들여 쓰기를 사용하십시오. 2) 예외 출력을 무시하지 마십시오. 'catch (Exception e) {}'를'catch (Exception e) {e.printStackTrace();로 변경하십시오. }' –

+1

@AndrewThompson TIFIFY. :-) –

+1

@AdamLiss 이제 '출력 무시'를 해결할 수 있습니까? 내 턱을 닦으세요? ;) –

답변

4

FileLineReader.class은 벨 문자의 ASCII 코드 인 7의 값을 가진 바이트를 포함하는 이진 (컴파일 된 Java) 파일 일 가능성이 큽니다. ASCII 7이 표시되면 많은 터미널에서 경고음을냅니다.

+0

당신은 어떻게이 많은 친구를 알 수 있습니까? 굉장한 대답 :). – sriram

+2

@sriram 어둠의 시대로 돌아가서, 우리가 촛불로 코드를 작성하고 SoundBlaster가 없었을 때, 컴퓨터의 연사는 재미있는 일이 일어 났을 때 우리에게 경고해야했습니다. –

+0

mac env에서이 프로그램을 실행하십시오. 소리가 들리지 않았습니다. 내 환경. Java 버전 1.6.0_31 Java Runtime Environment (빌드 > 1.6.0_31-b04-415-11M3635) > Java HotSpot (TM) 64 비트 서버 VM (빌드 20.6-b01-415) , 혼합 모드) > 및 Mac OS Lion 10.7.4 –

-2

이진 파일을 읽는 경우 임의의 소리를 나타내는 일련의 바이트를 포함 할 수 있습니다. 이러한 시퀀스를 표준 출력으로 보내면 OS가 사운드를 재생합니다.

+1

유권자가 아니지만 올바르지 않습니다. 아담의 다른 대답을보십시오. –