파일 판독기 바이너리 옵션으로 읽기


AJAX를 통해 PNG 파일을 서버에 업로드하려고하면 fileObject를 내 파일에있는 정보가 들어있는 객체입니다. VI를 사용하여 업로드하기 전에 파일의 처음 몇 줄을 확인하면됩니다. 업로드 후 동일한 파일이 표시됩니다. 그것은 어딘가에 서식을 인코딩 문제가 생겼어, 난 원시 이진 데이터에 대한 간단한 UTF8 인코딩 기능을 사용하여 시도했다. 그럼 원래의 code. which 날의 출력을 제공합니다. 아직 원시 파일이 뭔지 않습니다. 내가 어떻게로드 프로세스를 인코딩합니까 그 파일은 인코딩 문제를 피하기 위해 요청에받은 파일이 업로드되기 전의 파일과 동일합니다. 다른 유용한 정보가 있다면, 바이너리 데이터를 얻는 대신에 잘 작동합니다. 하지만 getAsBinary Firefox에서만 작동합니다 Mac에서 Firefox와 Chrome 모두에서 동일한 결과를 얻었습니다. 백엔드 업로드가 Mac에서 다시 실행되는 NGINX 업로드 모듈에 의해 처리됩니다. 서버와 클라이언트가 동일한 컴퓨터에 있습니다. 일이 벌어지고있다. 내가 업로드하려고하는 모든 파일, 나는 그것이 가장 명백한 예제 였기 때문에 PNG를 선택했다. 9 월 15 일 11시 13 분 07 초. 다음은 늦지 만 완전한 answer. FileReader 메소드 지원이다. 더 이상 사용되지 않습니다. W3C File API 작업 초안에서 더 이상 사용되지 않습니다. NB File은 확장 된 Blob 구조의 일종입니다. Mozilla는 여전히 readAsBinaryString을 구현하고 MDN FileApi 설명서에 설명합니다. readAsBinaryString 지원 중단 이유는 내 의견 JavaScript 문자열에 대한 다음 표준은 무작위 바이너리 데이터가 아닌 UTF-8 문자 만 허용하는 DOMString이므로 안전하지 않으며 ECMAScript와 호환되지 않는 readAsBinaryString을 사용하지 마십시오. JavaScript 문자열은 바이너리를 저장하지 않아야한다는 것을 알고 있습니다. 어떤 종류의 모질라가 될 수 있습니다. 제 생각에는 위험합니다. Blob 및 형식화 된 배열 ArrayBuffer 및 아직 구현되지 않았지만 필수는 아니지만 StringView는 UTF-8 문자열 제한없이 순수한 바이너리 데이터를 사용할 수 있도록 한 가지 목적으로 개발되었습니다. 업로드 지원. 다음 호출 옵션이 있습니다 ..sendAsBinary는 표준이 아니며 Chrome에서 지원되지 않을 수 있습니다. 파일 옵션의 몇 가지 옵션을 제공합니다. 파일 핸들을 조작하는 것이 더 복잡합니다. 별도로 보내야하지만 권장 사항은 권장 사항입니다. APPROACH. send the fileObject 그것은 쓸모없는 오버 헤드와 압축 대기 시간을 생성하고 서버 측에서 압축 해제 단계가 필요하지만 Javascript에서 문자열로 조작하기 쉽습니다. 비표준이면서 sendAsBinary가 fileObject입니다. 보내는 가장 좋은 방법은 파일 업로드와 같은 바이너리 컨텐트는 send 메소드와 함께 ArrayBuffers 또는 Blob을 사용합니다. 그러나 문자열 화 가능한 원시 데이터를 보내려면 sendAsBinary 메소드 또는 StringView Non native 유형화 된 배열 수퍼 클래스를 사용하십시오. 이걸 파헤쳐서 미안합니다. 다시 말하면, 아마도 바이너리 데이터 등을 보내는 가장 쉬운 방법을 추가하고 싶었습니다. PDF 파일은 깨끗한 base64로 인코딩 된 문자열이 아닌 단지 onloader 핸들러를 통해 전달됩니다. 첫 번째와 같은 몇 가지 정규식과 함께 첫 번째와 디코딩 될 서버에 실제 base64를 보내라 user1299518 Aug 19 14 at 11. 누구든지 MDN을 편집 할 수 있기 때문에 소스 코드로 사용하지 않을 것입니다. Chris Anderson May 22 15 17 40 vlzvl 당신은 내 영웅 Yster 11 월 16 15 16 48. user1299518, 더 나은 사용, 2 1 일치하지 않는 MrKsn 4 월 6 일 16시 17 12. 브라우저를 지원하는 가장 좋은 방법은 파일을 Blob, 또는 다중 파트 양식을 원할 경우 FormData 사용 FileReader가 필요하지 않습니다. 이는 데이터를 읽는 것보다 간단하고 효율적입니다. 특히 다중 파트 양식 데이터로 보내려는 경우 FormData 개체를 사용할 수 있습니다. 또한 multipart form-data를 사용하는 대신 직접 데이터를 보낼 수도 있습니다. 설명서를 참조하십시오 물론 서버 측 변경이 필요합니다. 브라우저 지원에 대해서는 IE 10.readAsBinaryString을 포함한 대부분의 브라우저를 참조하십시오. 모든 바이트가 0 255의 정수로 표시되는 2 진 문자열로 나타낼 수 있습니다. cript는 원래 ECMAScript 5의 WebGL에서 Typed Array에 대한 자세한 내용을 지원할 때까지 바이너리 형식을 사용하지 못했습니다. ECMAScript 2015 s ArrayBuffer로 대체되었으므로 String에 저장된 문자가 바깥에 없을 것이라는 보장이있는 문자열을 사용했습니다 범위 0 255 그들은 Numbers 배열로 대신 갈 수 있었지만 Numbers가 부동 소수점이므로 대용량 문자열은 Numbers 배열보다 메모리 효율이 더 좋았습니다. 대부분 텍스트 인 파일을 다시 읽는 경우 대부분 영어와 같은 서구의 스크립트에서, 그 문자열은 텍스트와 비슷하게 보일 것입니다. 유니 코드 문자가있는 파일을 읽는다면, JavaScript 문자열은 UTF-16 세부 정보이므로 아래에 나와 있습니다. 문자는 255보다 큰 값을 가지지 만, File API 스펙에 따른 이진 문자열은 유니 코드 코드 포인트의 두 바이트에 대해 두 개의 개별 문자가있는 255보다 큰 값을 갖지 않습니다. s 모든 이미지에서 텍스트가 아닌 아마 readAsText와 readAsBinaryString 사이에 여전히 비슷한 결과가 나타날 것입니다 만, readAsBinaryString을 사용하면 멀티 바이트 시퀀스를 문자로 해석하려는 시도가 없다는 것을 알고있을 것입니다. readAsText는 readAsText가 인코딩 결정을 사용하여 파일의 인코딩이 무엇인지 파악한 다음이를 JavaScript의 UTF-16 문자열에 매핑하기 때문에 발생합니다. 파일을 만들고 ASCII 또는 다른 파일에 저장하면 효과를 볼 수 있습니다. UTF-8 Windows에서는 메모장을 통해 유니 코드가 포함 된 인코딩 드롭 다운으로 저장할 수 있습니다. UTF-16을 의미하는 것으로 보이는 데이터를 보면 Mac OS와 nix 편집기에서 비슷한 기능을 사용할 수 있습니다. 여기에 두 페이지를 모두 읽은 결과를 덤프하는 페이지가 있습니다. UTF-16에 저장된 Testing 1 2 3 파일을 사용하면 다음과 같은 결과가 나타납니다. readAsText에서 문자를 해석하므로 테스트 1 2 3의 길이가 13이고 readAsBina ryString은 없었으므로 2 바이트 BOM과 각 문자 당 2 바이트를 더했습니다. responseType arraybuffer는 HTML 5에서 지원됩니다. JavaScript 문자열은 UTF-16입니다. 이상한 구문처럼 보일 수도 있습니다. 유니 코드 아니오, JavaScript 문자열은 서로 게이트 쌍을 두 개의 개별 JavaScript 문자로 표시하는 일련의 UTF-16 코드 단위입니다. 실제로, 서로 게이트 쌍은 단지 하나의 문자입니다. 자세한 내용은 링크를 참조하십시오. digitalFresh 문자열은 바이너리 데이터입니다. 주석을 달았 으면서 JavaScript에 바이너리 형식이없는 데 도움이 될 수있는 예제를 게시 했으므로 문자열에 저장된 문자가 0 255 범위를 벗어날 수 없다는 보장하에 문자열을 사용했습니다. 대신 숫자 배열을 사용할 수는 있었지만, 예제에서는 문자열 TJ Crowder에서 문자의 원시 값을 얻는 방법을 보여줍니다. 6 월 30 일 10시 5 09. morpheus이 물건은 비동기이기 때문에, 예외를보고 인터페이스를보고 비동기 적으로 오류를보고하는지 확인해야합니다. 실제로 FileReader에는이 오류에 대한 오류가 있습니다. 파일 URL을 사용하면 문서 도메인이. null로되어 많은 것을 막을 수 있습니다 내가 세부 사항을 모르겠다면, SOP가 들어갈 때, 나는 그것을 결코하지 않는다. 스펙의 보안 부분이 여전히 잠정적 인 것처럼 적어도 브라우저에서는 그렇다. TJ Crowder 11 월 5 일 10시 18 분 12.Man 감사합니다 - 다른 사람들이 내 단순화로 인해 잘못 읽는 것을 막기 위해 내 의견을 삭제했으며 세부 정보를 게시 해 주셔서 감사합니다. 다른 사람들이 내 의견을 훨씬 더 유용하게 생각하고 기사를 읽는 것이 정말 좋은 생각이라고 확신합니다. 이 영역에서 혼란스러워하는 경우 Brian M Hunt 12 월 14 일 14시 16. 바이너리 옵션으로 읽은 파일 판독기. blob URL은 일반 URL을 사용하는 곳이면 어디서나 사용할 수 있습니다. Java Script의 File 객체는 로컬 파일 시스템의 실제 파일을 참조합니다. Filereader 이진 옵션으로 읽음 Carigold Forex Sebenar V3 이진 옵션이 바이너리로 설정된 경우 FileReader에서 참 청크가 읽히는 경우 var opts typeof options undefined 옵션 var fileSize이 File 객체는 Blob 클래스에서 모든 속성과 메서드를 상속받습니다. 그러나 blob은 참조가 아닙니다. 실제 파일로 보일지도 모른다. 마찬가지로 blob URL을 blob을 참조한다. BLOB 데이터는 브라우저 및 BLOB 크기에 따라 메모리 또는 파일 시스템에 저장된다. BLOB는 fil 우리가 파일을 사용하는 곳이라면 어디서든 사용할 수 있습니다. 그러나 API의 동기식 버전도 웹 작업자에서 사용할 수 있습니다. Filereader는 바이너리 옵션으로 읽습니다. Forexpros Nickel Advanced Chart 2010 년 6 월 18 일 FileReader는 파일을 비동기 적으로 읽는 네 가지 옵션을 포함합니다. 2015 년 4 월 21 일 포함 File 또는 Blob을 읽을 수있는 메서드를 제공하는 FileReader 인터페이스 및 파일과 같은 이진 데이터와 함께 사용할 URL 스키마를 제공하므로 BlobPropertyBag 옵션, Exposed Window, Worker 인터페이스 Blob 사용할 수 있습니다. 여러 가지 방법으로 바이너리 옵션을 바이너리로 설정 한 경우 true 청크가 FileReader를 통해 읽혀질 경우 var opts typeof options 정의되지 않은 옵션 var fileSize blob에 대한 blob URL은 create Object URL 객체를 사용하여 얻을 수 있습니다. 독점 무역 회사 옵션 Trading. Kidane 거래 옵션. File 개체와 Blob 개체가 다르긴하지만 동일한 메서드와 속성을 노출합니다. Filereader는 이진 옵션으로 읽습니다. Additio 일반적으로이 사양은 스레드 웹 응용 프로그램 내에서 동기간 읽기를위한 객체를 정의합니다. 2010 년 6 월 18 일 FileReader는 파일을 비동기 적으로 읽는 네 가지 옵션을 포함합니다. 결과 속성에는 BLOB가 매우있을 수 있습니다 큰 즉, 오디오 및 비디오 데이터도 포함 할 수 있습니다. Graphiques Forex Taux De Change Guine 바이너리 옵션이 바이너리로 설정된 경우 FileReader에서 참 청크가 읽히는 경우 var opts typeof options 정의되지 않은 옵션 var fileSize 이들은 동적으로 생성 될 수있는 blob URL을 사용하여 Blob은 파일과 마찬가지로 크기와 MIME 유형을가집니다. Blob은 파일을 사용할 때마다 파일처럼 사용할 수 있습니다. 그러나 API의 동기 버전을 사용하여 웹 작업자에서 사용할 수 있습니다. Filereader as as 바이너리 옵션 Camarilla Fibonacci Calculator blob의 Forex 컨텐츠는 Array Buffer로 읽을 수 있으므로 Blob을 바이너리 데이터를 저장하는 데 매우 편리하게 만듭니다. 파일 URL이 있으므로 참조 로컬 파일 시스템의 실제 파일에 싱킹 Filereader가 바이너리 옵션으로 읽음 File 객체를 생성 할 방법이 없습니다. 일부 Java Script API는 참조를 반환합니다. File 객체 2012 년 5 월 15 일 FileReader 유형에는 파일 및 저장소에서 데이터를 읽는 단일 작업이 있습니다. 그것에서 ArrayBuffer 같은 바이너리 데이터에 대한 좋은 파일의 내용을 반환합니다 데이터 URL 때로는 데이터 URL이라고하는 경우 흥미로운 옵션 요즘 BLOB 매우 큰 수 있습니다 즉 너무 오디오 및 비디오 데이터를 포함 할 수 있습니다. BLOB 객체는 바이트의 척을 나타냅니다 파일의 데이터를 보유하고있는 Filereader 바이너리 옵션으로 읽은 Filereader 요구 사항 및 사용 사례에 관한 섹션 REQ는이 Powerpoint의 동기 부여를 다룹니다. Profesionales De Forex File 객체는 Conclusion을 사용하여 파일을 선택하는 결과로 반환 된 File List 객체에서 검색 할 수 있습니다 Blob은 바이너리 원격 파일로 작업하는 동안 매우 유용합니다. Forex Divisas Euro Dollar Conversion이 API는 웹 플랫폼의 다른 API 및 요소와 함께 사용하도록 설계되었습니다. 예를 들어 요청하십시오. 이 문서와 관련하여 의견을 제출하려면 public-webapps로 보내주십시오. w3 subscribe, 작업 요약서로서의 출판물은 회원 자격의 보증을 의미하지는 않습니다. Class BufferedReader. Reading 텍스트를 버퍼링하여 문자 입력 스트림에서 읽습니다. 문자를 사용하여 문자, 배열 및 행을 효율적으로 읽을 수 있도록합니다. 버퍼 크기를 지정하거나 기본 크기를 사용할 수 있습니다. 대부분의 경우 기본값이 충분합니다. 일반적으로 Reader로 이루어진 각 읽기 요청 기본 문자 또는 바이트 스트림에 해당하는 읽기 요청을 발생시킵니다. 따라서 FileReaders 및 InputStreamReaders와 같이 읽기 작업에 비용이 많이 드는 Reader 주위에 BufferedReader를 래핑하는 것이 좋습니다. 예를 들어 지정된 파일의 입력을 버퍼링하지 않습니다. 버퍼링을 사용하면 read 또는 readLine을 호출 할 때마다 바이트가 파일에서 읽히고 문자로 변환 된 다음 반환되므로 매우 비효율적 일 수 있습니다. Pr 텍스트 입력 용으로 DataInputStream를 사용하는 ogram은, 각 DataInputStream를 적절한 BufferedReader. Field Summary로 옮겨 놓아 로컬 라이즈 할 수 있습니다. class. Constructor로부터 상속 한 필드 Summary. Constructor 및 Description. 디폴트 크기의 입력 버퍼를 사용하는 버퍼링 문자 입력 스트림을 작성합니다. 지정된 사이즈의 입력 버퍼를 사용하는 버퍼링 문자 입력 스트림을 작성합니다. 디폴트 크기의 입력 버퍼를 사용하는 버퍼링 문자 입력 스트림을 작성합니다. 메소드 Detail. Reads는 단일의 문자를 읽어들입니다. Reader 클래스의 read가 돌려 주어집니다. 0 ~ 65535 0x00-0xffff 범위의 정수, 또는 Stream의 마지막에 이르렀을 경우는 -1 예외 : IOException - 입출력 에러가 발생했을 경우. 배열의 일부에 문자를 읽어들입니다. 이 메소드는 범용 규약을 구현합니다 Reader 클래스의 상응하는 read 메쏘드의 추가적인 편의를 위해, 그것은 underlyi의 read 메쏘드를 반복적으로 호출함으로써 가능한 한 많은 문자들을 읽으려고 시도한다. 스트림이 반복 read는, 다음의 조건의 어떤 것인가가 true가 될 때까지 계속됩니다. 지정된 수의 문자가 읽혔습니다. 기본이되는 스트림의 read 메소드는, 파일의 마지막을 나타내는 -1 또는 기본이되는 스트림의 ready 메소드를 돌려줍니다 이후의 입력 요구가 블록되는 것을 나타내는 false를 돌려줍니다. 기본이되는 스트림의 최초의 read가 파일의 마지막을 나타 내기 위해서 (때문에) -1을 돌려주는 경우, 이 메소드는 -1을 돌려줍니다. 그렇지 않은 경우, 이 메소드는 실제로 읽힌 문자의 수를 돌려줍니다. 이 클래스의 서브 클래스는 같은 방법으로 가능한 한 많은 문자를 읽어들이려고했지만, 필수는 아닙니다. 일반적으로, 이 메소드는이 스트림의 문자 버퍼로부터 문자를 취해, 필요에 따라서 기본이되는 스트림으로부터 그것을 채 웁니다. 다만, 버퍼가 하늘의 경우, mark가 유효하지 않고, 요구 된 길이가 적어도 버퍼보다 ​​큰 경우, 이 메소드는 기본이되는 스트림으로부터 지정된 배열에 문자를 직접 읽어들입니다. 따라서, 여분의 BufferedReader 불필요하게 데이터를 카피하지 않는다 Reader 클래스의 read에 의해 지정된다 파라미터 cbuf - 전송 처의 버퍼 off - 문자의 저장을 개시하는 오프셋 len - 읽어내는 문자의 최대 수 반환 값 읽은 문자의 수. 스트림에 이르렀습니다 예외 : IOException - 입출력 에러가 발생했을 경우. 텍스트 행을 읽어들입니다. 라인은, 줄 넘김 n, 캐리지 리턴 r, 또는 개행 직후의 캐리지 리턴의 어느 쪽인가에 의해 종료한다고 보여집니다. 행의 내용을 포함한 캐릭터 라인. 종단 캐릭터는 포함하지 않는다. 스트림의 마지막에 이르렀을 경우는 null 예외 : IOException - 입출력 에러가 발생했을 경우 관련 항목 : Reader 클래스에서의 오버라이드 (override) Parameters n - 반환 값 실제로 스킵 한 문자 수 예외 : IllegalArgumentException - n가 0보다 작은 경우 IOException - IO 에러가 발생했을 경우. 이 스트림의 read가 가능한가 어떤가가 통지된다 버퍼링 된 문자 스트림이 읽힌다 버퍼가 하늘이 아닌 경우, 또는 기본이되는 문자 스트림이 준비되어있는 경우는 y입니다. Reader 클래스에서 준비된 오버라이드 다음의 read가 입력을 블록하지 않는 것이 보증되는 경우는 true를 돌려 주어, 그렇지 않은 경우는 false를 돌려주는 것으로 다음의 read가 블록 예외 : IOException - IO 에러가 발생했을 경우. 이 스트림이, 마크 조작을 지원하고 있을지 어떨지를 지정한다. Reader 클래스의 markSupported를 오버라이드 (override)합니다. 이 스트림이 마크 조작을 서포트하고있는 경우에 한해 true를 돌려줍니다. reset는, 이 점에의 시냇물의 위치를 ​​변경하려고합니다. Reader 클래스의 오버라이드 (override) 마크) 파라미터 readAheadLimit - 마크를 보존 한 채로 읽어 낼 수있는 문자 수의 제한이 제한을 넘은 문자의 독해 후, 스트림의 리셋 시도. 실패 할 수 있음 입력 버퍼 크기보다 큰 한계 값은 크기가 한계보다 작지 않은 새 버퍼를 할당하게됩니다. IllegalArgumentException - readAheadLimit가 IOException 인 경우 - 입출력 에러가 발생했을 경우. 스트림을 최신의 마크에 리 셋트합니다. Reader 클래스에 설정된 오버라이드 (override) 예외 : IOException - 스트림이 아직 마크되지 않았던 경우, 또는 마크가 있었을 경우 스트림이 닫히고 관련 시스템 리소스가 해제됩니다. 스트림이 닫히고 추가 읽기, 준비, 표시, 재설정 또는 건너 뛰기 호출이 IOException을 발생시킵니다. 이전에 닫힌 스트림을 닫으면 아무 효과가 없습니다. 버그 또는 기능을 제출하십시오. 그 외의 API 레퍼런스 및 개발자 문서에 대해서는, Java SE 문서를 참조하십시오. 이 문서에는 개념 개요, 용어의 정의, 해결 방법, 및 실무 코드의 예를 포함한, 보다 상세한 개발자 용의 기술이 포함되어 있습니다. Copyright 1993, 2016, Oracle 그리고 그 계열사 All rights reserved 사용은 라이센스 조항의 적용을받습니다. 또한 문서 재배포 정책을 참조하십시오. 이 페이지의 스크립트 작성은 웹 페이지 트래픽을 추적하지만 Java에서 FileInputStream과 FileReader의 구체적인 차이점을 설명하기 전에 Java에서 InputStream과 Reader 사이의 근본적인 차이점을 설명하고 InputStream을 사용할시기와 Reader를 실제로 사용하는 시점을 모두 알려주십시오. InputStream과 Reader는 파일이나 소켓 중 하나 일 수있는 소스에서 데이터를 읽는 추상화입니다. 그러나 이들 사이의 주된 차이점은 InputStream은 바이너리 데이터를 읽는 반면 Reader는 텍스트 데이터를 읽는 데 사용됩니다. 바이너리와 텍스트 데이터 사이에서 읽는 모든 것이 본질적으로 바이트이지만 바이트를 텍스트로 변환하려면 문자 인코딩 스키마가 필요합니다. Reader 클래스는 문자 인코딩을 사용하여 바이트를 디코딩하고 호출자에게 문자를 반환합니다. Reader는 플랫폼의 기본 문자 인코딩을 사용할 수 있습니다. 귀하의 Java 프로그램이 실행 중이거나 Charset 객체 또는 String 형식 (예 : UTF-8)의 문자 인코딩 이름을 사용하는 경우 가장 간단한 것 중 하나임에도 불구하고 개념, 많은 Java 개발자가 소켓에서 텍스트 파일이나 텍스트 데이터를 읽는 동안 문자 인코딩을 지정하지 않는 실수를 범합니다. 올바른 인코딩을 지정하지 않았거나 프로그램이 이미 프로토콜에있는 인코딩 예를 들어 인코딩을 사용하지 않는 경우 XML 파일의 헤더에 HTML 파일 및 인코딩의 Content-Type이 표시되면 모든 데이터를 올바르게 읽지 못할 수도 있습니다. 기본 인코딩에 존재하지 않는 일부 문자는 스트림 또는 리더 사이의 근본적인 차이를 알 수 있습니다. FileInputStream과 FileReader의 차이점을 이해하는 것은 매우 쉽습니다. FileReader와 FileInputStream은 FileInputStream과 FileInputStream을 사용하여 이진 데이터를 읽는 반면, FileReader는 CharacterData. FileReader와 FileInputStream Java를 읽는 데 사용됩니다. FileReader는 InputStreamReader를 확장하므로 이 클래스 또는 플랫폼의 기본 문자 인코딩 기억 InputStreamReader는 문자 encodi를 캐시합니다. 객체를 생성 한 후 문자 인코딩을 설정해도 아무런 영향을 미치지 않습니다. Java에서 FileInputStream 및 FileReader를 사용하는 방법의 예를 보겠습니다. 파일의 위치를 ​​포함하는 File 객체 또는 String을 제공하여 File의 문자 데이터 읽기를 시작합니다 BufferedReader를 사용하여 파일에서 데이터를 읽는 것이 좋습니다. 첫 번째 예제는 바이트 단위로 파일에서 데이터를 읽으므로 FileInputStream에서 매우 느린 읽기 방식으로 바인딩됩니다. 아직 입력이 없으면 블록의 데이터를 읽거나 블록을 읽는 블로킹 방법입니다. 다음 바이트의 데이터를 반환하거나 파일의 끝에 도달하면 -1을 반환합니다. 이는 루프 반복마다 한 바이트를 읽고 인쇄한다는 것을 의미합니다 그것은 16 진수 문자열로 그렇다. InputStream을 바이트 배열로 변환하는 옵션이있다. 반면에, 예제 2에서는 InputStreamReade r은 FileReader에 의해 상속되며 단일 문자를 읽고 읽은 문자를 반환하거나 스트림의 끝에 도달하면 -1을 반환합니다. 따라서 예제 2의 파일 출력에 쓰여진 것과 똑같은 텍스트가 표시됩니다. 모두 다 켜져 있습니다. JavaBottom 라인의 FileInputStream과 FileReader의 차이점은 FileReader 또는 BufferedReader를 사용하여 File의 문자 또는 텍스트 데이터 스트림을 읽고 항상 문자 인코딩을 지정하는 것 FileInputStream을 사용하여 Java의 파일 또는 소켓에서 원시 바이트 스트림을 읽습니다.

Comments