클래스 java.net.URLConnection
java.lang.Object | +----java.net.URLConnection
- public abstract class URLConnection
- extends Object
- super class of:
- HttpURLConnection
abstract 클래스 URLConnection은 응용프로그램과 URL간의 통신 링크를 나타내는 모든 클래스의 수퍼클래스입니다. 이 클래스의 인스턴스는 URL로 참조되는 자원 읽거나 기록하는 데 사용할 수 있습니다. 일반적으로, URL로의 연결을 작성하는 과정은 여러 단계의 프로세스입니다.
openConnection() |
connect() |
|---|---|
| 원격 자원 연결에 영향을 주는 매개변수를 조작합니다. | 자원과 상호작용하고 헤더 필드 및 내용을 조회합니다. |
—————————->
time
- 연결 객체는 URL에서
openConnection메소드를 호출하여 작성됩니다. - 설정 매개변수와 일반적인 요청 특성이 조작됩니다.
connect메소드를 사용하여 원격 객체로의 실제 연결이 작성됩니다.- 원격 객체를 사용할 수 있게 됩니다. 원격 객체의 헤더 필드와 내용에 액세스할 수 있습니다.
설정 매개변수는 다음과 같은 메소드를 사용하여 수정됩니다.
setAllowUserInteractionsetDoInputsetDoOutputsetIfModifiedSincesetUseCaches
일반 요청 특성은 다음 메소드를 사용하여 수정됩니다.
setRequestProperty
AllowUserInteraction 및 UseCaches 매개변수의 기본값은 setDefaultAllowUserInteraction 및 setDefaultUseCaches 메소드를 사용하여 설정할 수 있습니다. 일반 요청 특성의 기본값은 setDefaultRequestProperty 메소드를 사용하여 설정할 수 있습니다.
위의 각 set 메소드에는 매개변수 값 또는 일반 요청 특성을 검색하기 위한 적합한 get 메소드가 있습니다. 프로토콜에 따라 적용할 수 있는 구체적인 매개변수 및 일반 요청 특성이 달라집니다.
다음 메소드는 원격 객체로의 연결을 작성한 후 헤더 필드 및 내용에 액세스하는 데 사용됩니다.
getContentgetHeaderFieldgetInputStreamgetOutputStream
특정 헤더 필드가 자주 액세스됩니다. 다음 메소드
getContentEncodinggetContentLengthgetContentTypegetDategetExpirationgetLastModified
는 이들 필드로 편리하게 액세스할 수 있게 해줍니다. getContentType 메소드는 getContent 메소드가 원격 객체 유형을 알아내는 데 사용됩니다. 서브클래스는 getContentType 메소드를 손쉽게 대체(override)할 수 있습니다.
보통의 경우에는 모든 사전연결 매개변수와 일반 요청 특성을 무시할 수 있습니다. 사전연결 매개변수와 요청 특성의 기본값은 변할 수 있습니다. 이 인터페이스의 클라이언트 대부분은 편의 메소드에 의해 URL 클래스에서 이중화되는 두 메소드 getInputStream 및 getObject에만 관심이 있습니다.
http 연결의 요청 특성 및 헤더 필드에 대한 정보를 알려면 다음 사이트를 방문하십시오.
http://www.w3.org/hypertext/WWW/Protocols/HTTP1.0/draft-ietf-http-spec.html
- 해당 버전:
- JDK1.0 이상
- 참조:
- openConnection, connect, getContent, getContentEncoding, getContentLength, getContentType, getDate, getExpiration, getHeaderField, getHeaderField, getInputStream, getLastModified, getOutputStream, setAllowUserInteraction, setDefaultRequestProperty, setDefaultUseCaches, setDoInput, setDoOutput, setIfModifiedSince, setRequestProperty, setUseCaches
변수 색인
- allowUserInteraction
true인 경우,URL은 인증 대화 상자 표시와 같은 사용자 상호 작용을 허용하는 문맥에서 검사중입니다.- connected
false인 경우, 연결 객체가 지정된 URL로의 통신 링크를 작성하지 않았습니다.- doInput
- 변수는
setDoInput메소드로 설정됩니다. - doOutput
- 변수는
setDoOutput메소드로 설정됩니다. - ifModifiedSince
- 객체가 특정 시간보다 최근에 수정된 경우 몇몇 프로토콜은 객체의 인출 건너뛰기를 지원합니다.
- url
- URL은 연결이 열려 있는 WWW상의 원격 객체를 나타냅니다.
- useCaches
true인 경우, 프로토콜은 가능할 때마다 캐싱을 사용할 수 있습니다.
생성자 색인
- URLConnection(URL)
- 지정된 URL로의 URL 연결을 구성합니다.
메소드 색인
- connect()
- 연결이 아직 설정되지 않은 경우 URL이 참조하는 자원으로의 통신 링크를 엽니다.
- getAllowUserInteraction()
- 객체에 대한
allowUserInteraction필드값을 리턴합니다. - getContent()
- URL 연결의 내용을 검색합니다.
- getContentEncoding()
content-encoding헤더 필드값을 리턴합니다.- getContentLength()
content-length헤더 필드값을 리턴합니다.- getContentType()
content-type헤더 필드값을 리턴합니다.- getDate()
date헤더 필드값을 리턴합니다.- getDefaultAllowUserInteraction()
allowUserInteraction필드의 기본값을 리턴합니다.- getDefaultRequestProperty(String)
- 기본 요청 특성값을 리턴합니다.
- getDefaultUseCaches()
URLConnection의useCaches플래그에 대한 기본값을 리턴합니다.- getDoInput()
URLConnection의doInput플래그에 대한 값을 리턴합니다.- getDoOutput()
URLConnection의doOutput플래그에 대한 값을 리턴합니다.- getExpiration()
expires헤더 필드값을 리턴합니다.- getFileNameMap()
- FileNameMap을 리턴합니다.
- getHeaderField(int)
nth 헤더 필드값을 리턴합니다.- getHeaderField(String)
- 지정된 헤더 필드값을 리턴합니다.
- getHeaderFieldDate(String, long)
- 날짜로서 분석된 명명된 필드값을 리턴합니다.
- getHeaderFieldInt(String, int)
- 숫자로서 분석된 명명된 필드값을 리턴합니다.
- getHeaderFieldKey(int)
nth 헤더 필드 키를 리턴합니다.- getIfModifiedSince()
- 객체의
ifModifiedSince필드값을 리턴합니다. - getInputStream()
- 열린 연결에서 읽은 입력 스트림을 리턴합니다.
- getLastModified()
last-modified헤더 필드값을 리턴합니다.- getOutputStream()
- 연결에 기록한 출력 스트림을 리턴합니다.
- getRequestProperty(String)
- 연결에 대한 명명된 일반 요청 특성의 값을 리턴합니다.
- getURL()
URLConnection의URL필드값을 리턴합니다.- getUseCaches()
URLConnection의useCaches필드값을 리턴합니다.- guessContentTypeFromName(String)
- URL의 지정된 “파일” 컴포넌트에 기초한 객체의 내용 유형을 알아내려 합니다.
- guessContentTypeFromStream(InputStream)
- 입력 스트림의 시작 부분에 있는 문자에 기초한 입력 스트림의 유형을 알아내려 합니다.
- setAllowUserInteraction(boolean)
URLConnection의allowUserInteration필드값을 설정합니다.- setContentHandlerFactory(ContentHandlerFactory)
- 응용프로그램의
ContentHandlerFactory를 설정합니다. - setDefaultAllowUserInteraction(boolean)
- 이후에 사용될 모든
URLConnection객체에 대한allowUserInteraction필드의 기본값을 설정합니다. - setDefaultRequestProperty(String, String)
- 일반 요청 특성의 기본값을 설정합니다.
- setDefaultUseCaches(boolean)
useCaches필드의 기본값을 지정된 값으로 설정합니다.- setDoInput(boolean)
URLConnection에 대한doInput필드값을 지정된 값으로 설정합니다.- setDoOutput(boolean)
URLConnection에 대한doOutput필드값을 지정된 값으로 설정합니다.- setFileNameMap(FileNameMap)
- FileNameMap을 설정합니다.
- setIfModifiedSince(long)
URLConnection의ifModifiedSince필드값을 지정된 값으로 설정합니다.- setRequestProperty(String, String)
- 일반 요청 특성을 설정합니다.
- setUseCaches(boolean)
URLConnection의useCaches필드값을 지정된 값으로 설정합니다.- toString()
- URL 연결의
String표현을 리턴합니다.
변수
protected URL url
- URL은 연결이 열리는 WWW상의 원격 객체를 나타냅니다.이 필드의 값은
getURL메소드로 액세스할 수 있습니다.이 변수의 기본값은
URLConnection생성자의 URL 인수 값입니다.
protected boolean doInput
- 변수는
setDoInput메소드로 설정됩니다. 이 값은getDoInput메소드에 의해 리턴됩니다.URL 연결은 입출력에 사용될 수 있습니다.doInput플래그를true로 설정하면 응용프로그램이 URL 연결에서 데이터를 읽으려 한다는 의미입니다.이 필드의 기본값은
true입니다. -
- 참조:
- getDoInput, setDoInput
protected boolean doOutput
- 변수는
setDoOutput메소드로 설정됩니다. 이 값은getDoInput메소드에 의해 리턴됩니다.URL 연결은 입출력에 사용될 수 있습니다.doOutput플래그를true로 설정하면 응용프로그램이 URL 연결에 데이터를 기록하려 한다는 의미입니다.이 필드의 기본값은
false입니다. -
- 참조:
- getDoOutput, setDoOutput
protected boolean allowUserInteraction
true인 경우,URL은 인증 대화 상자 표시와 같은 사용자 상호 작용을 허용하는 문맥에서 검사중입니다.false인 경우, 사용자 개입이 허용되지 않습니다.이 필드의 값은setAllowUserInteraction메소드로 설정할 수 있습니다. 그 값은getAllowUserInteraction메소드에 의해 리턴됩니다. 기본값은setDefaultAllowUserInteraction메소드를 마지막으로 호출했을 때의 인수값입니다.
protected boolean useCaches
true인 경우, 프로토콜은 가능할 때마다 캐싱을 사용할 수 있습니다.false인 경우, 프로토콜은 항상 객체의 최신 사본을 가져오려고 합니다.이 필드는setUseCaches메소드로 설정됩니다. 값은getUseCaches메소드에 의해 리턴됩니다.기본값은
setDefaultUseCaches메소드를 마지막으로 호출했을 때의 주어진 값입니다.
protected long ifModifiedSince
- 객체가 특정 시간보다 최근에 수정된 경우 몇몇 프로토콜은 객체의 인출 건너뛰기를 지원합니다.0이 아닌 값은 시간을 GMT 1970년 1월 1일 이후 초수로 제공합니다. 객체는 해당 시간보다 최근에 수정된 경우에만 가져옵니다.
이 변수는
setIfModifiedSince메소드로 설정됩니다. 값은getIfModifiedSince메소드에 의해 리턴됩니다.이 필드의 기본값은
0으로서, 인출이 항상 발생해야 함을 나타냅니다.
protected boolean connected
false인 경우, 연결 객체는 지정된 URL로의 통신 링크를 작성하지 않았습니다.true인 경우, 통신 링크가 설정되었습니다.
생성자
protected URLConnection(URL url)
- 지정된 URL로의 URL 연결을 구성합니다. URL에 의해 참조되는 객체로의 연결이 작성되지 않습니다.
-
- 매개변수:
- url – 지정된 URL.
메소드
public static FileNameMap getFileNameMap()
- FileNameMap을 리턴합니다.
public static void setFileNameMap(FileNameMap map)
- FileNameMap을 설정합니다.
-
- 매개변수:
- map – 설정될 FileNameMap
public abstract void connect() throws IOException
- 아직 연결이 설정되지 않은 경우 URL에 의해 참조되는 자원으로의 통신 링크를 엽니다.연결이 이미 열려 있는 상태에서(
connected필드값이true)connect메소드가 호출되면, 이 호출은 무시됩니다.URLConnection 객체는 두 단계로 전달되는데, 먼저 객체를 작성한 다음 객체를 연결합니다. 객체가 작성된 다음 연결되기 전에, 다양한 옵션을 지정할 수 있습니다(예: doInput 및 UseCaches). 연결한 후에 옵션을 설정하려고 하면 오류가 발생합니다. 연결 상태에 따라 getContentLength와 같은 조작이 필요할 경우 내부적으로 연결을 수행합니다.
-
- 오류: IOException
- 연결을 여는 중에 I/O 오류가 발생하는 경우
- 참조:
- connected
public URL getURL()
URLConnection의URL필드값을 리턴합니다.-
- 결과:
URLConnection의URL필드값- 참조:
- url
public int getContentLength()
content-length헤더 필드값을 리턴합니다.-
- 결과:
- 연결의 URL이 참조하는 자원의 내용 길이, 또는 내용 길이를 알 수 없는 경우
-1
public String getContentType()
content-type헤더 필드값을 리턴합니다.-
- 결과:
- URL이 참조하는 자원의 내용 유형, 또는 알 수 없는 경우
null - 참조:
- getHeaderField
public String getContentEncoding()
content-encoding헤더 필드값을 리턴합니다.-
- 결과:
- URL이 참조하는 자원의 내용 인코딩, 또는 알 수 없는 경우
null - 참조:
- getHeaderField
public long getExpiration()
expires헤더 필드값을 리턴합니다.-
- 결과:
- URL이 참조하는 자원의 만기 날짜, 또는 알 수 없는 경우 0. 값은 GMT 1970년 1월 1일 이후의 초수입니다.
- 참조:
- getHeaderField
public long getDate()
date헤더 필드값을 리턴합니다.-
- 결과:
- URL이 참조하는 자원의 전송 날짜, 또는 알 수 없는 경우 0. 리턴된 값은 GMT 1970년 1월 1일 이후의 초수입니다.
- 참조:
- getHeaderField
public long getLastModified()
last-modified헤더 필드값을 리턴합니다. 리턴된 값은 GMT 1970년 1월 1일 이후의 초수입니다.-
- 결과:
URLConnection이 참조하는 자원이 마지막으로 수정된 날짜, 또는 알 수 없는 경우 0- 참조:
- getHeaderField
public String getHeaderField(String name)
- 지정된 헤더 필드값을 리턴합니다. 이 메소드로 전달할 헤더 필드의 이름은 getHeaderFieldKey에서 얻을 수 있습니다.
-
- 매개변수:
- name – 헤더 필드의 이름
- 결과:
- 명명된 헤더 필드의 이름, 또는 헤더에 이러한 필드가 없는 경우
null - 참조:
- getHeaderFieldKey
public int getHeaderFieldInt(String name, int Default)
- 숫자로 분석된 명명된 필드값을 리턴합니다.
getHeaderField형식이 존재하는 이유는 일부 연결 유형(예:http-ng)이 사전 분석된 헤더를 가지고 있기 때문입니다. 이런 연결 유형에 대한 클래스는 이 메소드를 대체(override)하고 분석을 단축시킬 수 있습니다. -
- 매개변수:
- name – 헤더 필드의 이름
- Default – 기본값
- 결과:
- 정수로 분석된 명명된 필드의 값.
Default값은 필드가 누락되거나 잘못된 경우 리턴됩니다.
public long getHeaderFieldDate(String name, long Default)
- 날짜로 분석된 명명된 필드값을 리턴합니다. 결과는 GMT 1970년 1월 1일 이후의 초수이며 명명된 필드로 표현됩니다.
getHeaderField형식이 존재하는 이유는 일부 연결 유형(예:http-ng)이 사전 분석된 헤더를 가지고 있기 때문입니다. 이런 연결 유형에 대한 클래스는 이 메소드를 대체하고 분석을 단축시킬 수 있습니다. -
- 매개변수:
- name – 헤더 필드의 이름
- Default – 기본값
- 결과:
- 날짜로서 분석된 필드의 값.
Default인수의 값은 필드가 누락되거나 잘못된 경우 리턴됩니다.
public String getHeaderFieldKey(int n)
nth 헤더 필드 키를 리턴합니다.-
- 매개변수:
- n – 색인
- 결과:
nth 헤더 필드 키, 또는 필드가n개 미만인 경우null
public String getHeaderField(int n)
nth 헤더 필드값을 리턴합니다. 필드가n개 미만인 경우null을 리턴합니다.이 메소드는getHeaderFieldKey메소드와 함께 메시지의 모든 헤더를 반복하는 데 사용될 수 있습니다.-
- 매개변수:
- n – 색인.
- 결과:
nth 헤더 필드값- 참조:
- getHeaderFieldKey
public Object getContent() throws IOException
- URL 연결의 내용을 검색합니다.이 메소드는 먼저
getContentType메소드를 호출하여 객체의 내용 유형을 알아냅니다. 응용프로그램이 처음으로 해당 특정 내용 유형을 보았다면, 해당 내용 유형에 대한 내용 핸들러가 작성됩니다.- 응용프로그램이
setContentHandlerFactory메소드를 사용하여 내용 핸들러 팩토리 인스턴스를 설정했다면, 인스턴스의createContentHandler메소드가 해당 내용 유형을 인수로 사용하여 호출되며, 결과는 해당 내용 유형의 내용 핸들러입니다. - 아직 내용 핸들러 팩토리가 설정되지 않았거나 팩토리의
createContentHandler메소드가null을 리턴하는 경우, 응용프로그램은 다음과 같은 이름의 클래스를 로드합니다.sun.net.www.content.<contentType>
- 을 던집니다.
UnknownServiceException의 서브클래스가 아니라면,ContentHandler‘입니다. 지정된 클래스가 없거나9‘-‘0‘ 및 10개의 ASCII 숫자 ‘z‘-‘a‘, 26개의 ASCII 소문자 ‘Z‘-‘A‘로 대체하여 구성됩니다. 영숫자 문자는 특별히 26개의 ASCII 대문자 ‘_(‘.’)로 대체하고 영숫자가 아닌 모든 문자를 밑줄 기호 ‘period>은 내용 유형 문자열의 모든 슬래시 문자를 contentType 여기서, <
- 응용프로그램이
-
- 결과:
- 가져온 객체.
instanceOf조작은 리턴된 특정 종류의 객체를 판별하는 데 사용되어야 합니다. - 오류: IOException
- 내용을 가져오는 중에 I/O 오류가 발생하는 경우
- 오류: UnknownServiceException
- 프로토콜이 해당 내용 유형을 지원하지 않는 경우
- 참조:
- createContentHandler, getContentType, setContentHandlerFactory
public InputStream getInputStream() throws IOException
- 열린 연결에서 읽은 입력 스트림을 리턴합니다.
-
- 결과:
- 열린 연결에서 읽은 입력 스트림
- 오류: IOException
- 입력 스트림을 작성하는 중에 I/O 오류가 발생하는 경우
- 오류: UnknownServiceException
- 프로토콜이 입력을 지원하지 않는 경우
public OutputStream getOutputStream() throws IOException
- 연결에 기록한 출력 스트림을 리턴합니다.
-
- 결과:
- 연결에 출력 스트림.
- 오류: IOException
- 출력 스트림을 작성하는 중에 I/O 오류가 발생하는 경우
- 오류: UnknownServiceException
- 프로토콜이 출력을 지원하지 않는 경우
public String toString()
public void setDoInput(boolean doinput)
URLConnection에 대한doInput필드값을 지정된 값으로 설정합니다.URL 연결은 입출력에 사용될 수 있습니다. URL 연결을 입력용으로 사용하려는 경우 DoInput 플래그를 true로 설정하고, 그렇지 않은 경우는 false로 설정하십시오. 기본값은 DoOutput이 명시적으로 true로 설정되지 않은 경우 true이며, 이때 DoInput의 기본값은 false입니다.-
- 매개변수:
- value – 새로운 값
- 참조:
- doInput
public boolean getDoInput()
URLConnection의doInput플래그에 대한 값을 리턴합니다.-
- 결과:
URLConnection의doInput플래그 값- 참조:
- doInput
public void setDoOutput(boolean dooutput)
URLConnection에 대한doOutput필드값을 지정된 값으로 설정합니다.URL 연결은 입출력에 사용될 수 있습니다. URL 연결을 출력용으로 사용하려는 경우 DoOutput 플래그를 true로 설정하고, 그렇지 않은 경우는 false로 설정하십시오. 기본값은 false입니다.-
- 매개변수:
- value – 새로운 값
- 참조:
- doOutput
public boolean getDoOutput()
URLConnection의doOutput플래그에 대한 값을 리턴합니다.-
- 결과:
URLConnection의doOutput플래그 값- 참조:
- doOutput
public void setAllowUserInteraction(boolean allowuserinteraction)
URLConnection의allowUserInteration필드값을 설정합니다.-
- 매개변수:
- allowuserinteraction – 새로운 값
- 참조:
- allowUserInteraction
public boolean getAllowUserInteraction()
- 객체에 대한
allowUserInteraction필드값을 리턴합니다. -
- 결과:
- 객체에 대한
allowUserInteraction필드값 - 참조:
- allowUserInteraction
setDefaultAllowUserInteraction
public static void setDefaultAllowUserInteraction(boolean defaultallowuserinteraction)
- 이후에 사용될 모든
URLConnection객체에 대한allowUserInteraction필드의 기본값을 설정합니다. -
- 매개변수:
- defaultallowuserinteraction – 새로운 값
- 참조:
- allowUserInteraction
getDefaultAllowUserInteraction
public static boolean getDefaultAllowUserInteraction()
allowUserInteraction필드의 기본값을 리턴합니다.이 기본값은 “선택고정”으로서 모든 URLConnection의 static 상태 부분입니다. 이 플래그는 작성된 모든 URLConnection에 적용됩니다.-
- 결과:
allowUserInteraction필드의 기본값- 참조:
- allowUserInteraction
public void setUseCaches(boolean usecaches)
URLConnection의useCaches필드값을 지정된 값으로 설정합니다.몇몇 프로토콜은 문서 캐싱을 수행합니다. 경우에 따라, 캐시를 무시하는 것도 중요합니다(예를 들어, 검색기의 “재로드” 단추). 연결의 UseCaches 플래그가 true인 경우, 이 연결은 모든 캐시를 사용할 수 있습니다. false이면 캐시는 무시됩니다. 기본값은 DefaultUseCaches의 값이며 true입니다.-
- 참조:
- useCaches
public boolean getUseCaches()
URLConnection의useCaches필드값을 리턴합니다.-
- 결과:
URLConnection의useCaches필드값- 참조:
- useCaches
public void setIfModifiedSince(long ifmodifiedsince)
URLConnection의ifModifiedSince필드값을 지정된 값으로 설정합니다.-
- 매개변수:
- value – 새로운 값
- 참조:
- ifModifiedSince
public long getIfModifiedSince()
- 객체의
ifModifiedSince필드값을 리턴합니다. -
- 결과:
- 객체의
ifModifiedSince필드값 - 참조:
- ifModifiedSince
public boolean getDefaultUseCaches()
URLConnection의useCaches플래그에 대한 기본값을 리턴합니다.이 기본값은 “선택고정”으로서 모든 URLConnection의 static 상태 부분입니다. 이 플래그는 작성된 모든 URLConnection에 적용됩니다.-
- 결과:
URLConnection의useCaches플래그에 대한 기본값- 참조:
- useCaches
public void setDefaultUseCaches(boolean defaultusecaches)
useCaches필드의 기본값을 지정된 값으로 설정합니다.-
- 매개변수:
- defaultusecaches – 새로운 값
- 참조:
- useCaches
public void setRequestProperty(String key, String value)
- 일반 요청 특성을 설정합니다.
-
- 매개변수:
- key – 요청이 알려진 키워드(예: “
accept“) - value – 키와 관련된 값
public String getRequestProperty(String key)
- 연결에 대한 명명된 일반 요청 특성의 값을 리턴합니다.
-
- 결과:
- 연결에 대한 명명된 일반 요청 특성값
public static void setDefaultRequestProperty(String key, String value)
- 일반 요청 특성의 기본값을 설정합니다.
URLConnection은 작성될 때 이러한 특성으로 초기화됩니다. -
- 매개변수:
- key – 요청이 알려진 키워드(예: “
accept“) - value – 키와 관련된 값
public static String getDefaultRequestProperty(String key)
- 기본 요청 특성값을 리턴합니다. 모든 연결에 대해 기본 요청 특성이 설정됩니다.
-
- 결과:
- 지정된 키에 대한 기본 요청 특성값
- 참조:
- setDefaultRequestProperty
public static synchronized void setContentHandlerFactory(ContentHandlerFactory fac)
- 응용프로그램의
ContentHandlerFactory를 설정합니다. 대부분 응용프로그램에 의해 한번만 호출할 수 있습니다.내용 유형에서 내용 핸들러를 구성하기 위해ContentHandlerFactory인스턴스가 호출됩니다. -
- 매개변수:
- fac – 요구된 팩토리
- 오류: Error
- 팩토리가 이미 정의된 경우
- 참조:
- ContentHandlerFactory, getContent
protected static String guessContentTypeFromName(String fname)
- URL의 지정된 “파일” 컴포넌트에 기초한 객체의 내용 유형을 알아내려 합니다. 서브클래스가
getContentType메소드를 대체하는 데 사용할 수 있는 편의 메소드입니다. -
- 매개변수:
- fname – 파일명
- 결과:
- 파일명에 기초한 객체의 내용 유형
- 참조:
- getContentType
public static String guessContentTypeFromStream(InputStream is) throws IOException
- 입력 스트림의 시작 부분에 있는 문자를 근거로 입력 스트림의 유형을 알아내려 합니다. 이 메소드는 서브클래스가
getContentType메소드를 대체하는 데 사용할 수 있습니다.이상적으로는 이 루틴이 필요하지 않습니다. 그러나 많은http서버가 잘못된 내용 유형을 리턴하고, 추가로 표준이 아닌 확장도 많습니다. 내용 유형을 알아내기 위해서는http서버가 제시하는 내용 유형을 믿는 것보다 바이트를 직접 조사하는 것이 더 정확한 경우가 종종 있습니다. -
- 매개변수:
- is – 표시를 지원한 입력 스트림
- 결과:
- 내용 유형, 또는 아무것도 알아낼 수 없는 경우
null - 오류: IOException
- 입력 스트림을 읽는 중에 I/O 오류가 발생하는 경우
- 참조:
- mark, markSupported, getContentType